javascript Date对象 之 date初始化

javascript Date对象 --> 日期初始化:

总结:
日期初始化的 方式:
1. new Date( yyyy, M(+), d(+), h(+), m(+), s(+) );

2. new Date( yyyy, M(+), d(+) );

3. new Date( "yyyy[*]M(+)[*]d(+) h(+):m(+):s(+)" );

4. new Date( "yyyy[*]M(+)[*]d(+)" );

5. new Date( "M(+)[*]d(+)[*]yyyy h(+):m(+):s(+)" );

6. new Date( "M(+)[*]d(+)[*]yyyy" );

7. new Date(ms);

注:
yyyy:四位数表示的年份
M:用整数表示月份,从0(1月)到11(12月)
d:表示一个月中的第几天,从1到31
h:小时数,从0(午夜)到23(晚11点)
m:分钟数,从0到59的整数
s:秒数,从0到59的整数
ms:毫秒数,为大于等于0的整数
[*] : 代表 “空格”,“-”,“/”,“&”,“$”, "@", "*", "#", "=" 等等一系列的特殊符号
(+): 代表 至少一位数

* 构造函数中部分参数为负数的情况:
new Date(1990,11,-1)
Thu Nov 29 1990 00:00:00 GMT+0800 (中国标准时间)
new Date(1990,10,-1)
Tue Oct 30 1990 00:00:00 GMT+0800 (中国标准时间)
new Date(1990,10,-2)
Mon Oct 29 1990 00:00:00 GMT+0800 (中国标准时间)
new Date(1990,-1,-2)
Tue Nov 28 1989 00:00:00 GMT+0800 (中国标准时间)
new Date(1990,-1,0)
Thu Nov 30 1989 00:00:00 GMT+0800 (中国标准时间)

上面的结果,你可能会有疑惑,不急,且跟我一起往下看:

在月份小于0时,构造函数会在月份为0的基础上,向上X月,如:
new Date(2015,-1,1)
Mon Dec 01 2014 00:00:00 GMT+0800 (中国标准时间)

在日小于1时,构造函数会在天数为1的基础上,向上X天,如:
new Date(2015,0,0)
Wed Dec 31 2014 00:00:00 GMT+0800 (中国标准时间)

如果两者都为负数,可以先计算月,再计算日,得出正确结果,如:
new Date(2015,-1,0)
Sun Nov 30 2014 00:00:00 GMT+0800 (中国标准时间)

如果月大于11,日大于当月天数,自动向后推移,如(2015年2月份只有28天):
new Date(2015,1,29)
Sun Mar 01 2015 00:00:00 GMT+0800 (中国标准时间)

也就是说在开发过程中,我们完全可以使用new Date(yyyy,mm,dd)构造函数提供的这一特性,完成上一日,下一日,上一月,下一月这样的日期操作。
上一日:new Date(yyyy,mm,dd-1)
下一日:new Date(yyyy,mm,dd+1)
上一月:new Date(yyyy,mm-1,dd)
下一月:new Date(yyyy,mm+1,dd)
在IE9、Chrome及Firefox浏览器实测通过。

 

测试代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Date对象初始化</title>
</head>
<body>
    <script type="text/javascript">

        var d1 = new Date();                // 获得当日日期

        var d2_1 = new Date(2015, 6, 4);     // new Date(yyyy, M, d);
        var d2_2 = new Date(2015, 6, 04);     // new Date(yyyy, M, dd);
        var d2_3 = new Date(2015, 06, 4);     // new Date(yyyy, MM, d);
        var d2_4 = new Date(2015, 06, 04);     // new Date(yyyy, MM, dd);
        var d2_5 = new Date(2015, 06, 04, 2, 3, 4);     // new Date(yyyy, MM, dd, hh, mm, ss);
        // var d2_6 = new Date(6, 4, 2015);        // *这种方式不可以
        // var d2_7 = new Date(2015, 06, 04 2:3:4);     // *这种方式不可以
        // var d2_8 = new Date(2015 6 4);    // *这种方式不可以
        // var d2_9 = new Date(15, 6, 4);      // *这种方式不可以

        var d3_1 = new Date("6 4, 2015");    // new Date("M  d, yyyy");
        var d3_2 = new Date("6 04, 2015");    // new Date("M  dd, yyyy");
        var d3_3 = new Date("06 4, 2015");    // new Date("MM  d, yyyy");
        var d3_4 = new Date("06 04, 2015");    // new Date("MM  dd, yyyy");

        var d4_1 = new Date("6, 4, 2015");    // new Date("M,  d, yyyy");
        var d4_2 = new Date("6, 04, 2015");    // new Date("M,  dd, yyyy");
        var d4_3 = new Date("06, 4, 2015");    // new Date("MM,  d, yyyy");
        var d4_4 = new Date("06, 04, 2015");    // new Date("MM,  dd, yyyy");

        var d5_1 = new Date("2015, 06, 04");    // new Date("yyyy, MM, dd");
        var d5_2 = new Date("2015, 6, 04");    // new Date("yyyy, M, dd");
        var d5_3 = new Date("2015, 06, 4");    // new Date("yyyy, MM, d");
        var d5_4 = new Date("2015, 6, 4");    // new Date("yyyy, M, d");
        var d5_5 = new Date("2015, 6, 4 4:3:2");    // new Date("yyyy, M, d hh:mm:ss");
        var d5_6 = new Date("2015, 6, 4, 4:3:2");    // new Date("yyyy, M, d hh:mm:ss");
        var d5_7 = new Date("2015, 6, 4, 4, 3, 2");    // *这种方式不可以

        var d6_1 = new Date("2015 6 4");    // new Date("yyyy, M, d");
        var d6_2 = new Date("2015 06 4");    // new Date("yyyy, MM, d");
        var d6_3 = new Date("2015 6 04");    // new Date("yyyy, M, dd");
        var d6_4 = new Date("2015 06 04");    // new Date("yyyy, MM, dd");

        var d7_1 = new Date("06 04 2015");      // new Date("MM dd yyyy");
        var d7_2 = new Date("6 04 2015");       // new Date("M dd yyyy");
        var d7_3 = new Date("06 4 2015");       // new Date("MM d yyyy");
        var d7_4 = new Date("6 4 2015");        // new Date("M d yyyy");
        var d7_5 = new Date("6 4 2015 4:3:2");    // new Date("M d yyyy");

        var d8_1 = new Date("2015-5-2");     // new Date("yyyy-M-d");
        var d8_2 = new Date("2015-5-03");     // new Date("yyyy-M-dd");
        var d8_3 = new Date("2015-05-3");     // new Date("yyyy-MM-d");
        var d8_4 = new Date("2015-05-03");     // new Date("yyyy-MM-dd");
        var d8_5 = new Date("2015-05-03 4:3:2");     // new Date("yyyy-MM-dd hh:mm:ss");
        var d8_6 = new Date("2015-05-03 4-3-2");     // 不可以
        var d8_7 = new Date("2015-05-03-4-3-2");     // 不可以

        var d9_1 = new Date("5-2-2015");     // new Date("M-d-yyyy");
        var d9_2 = new Date("5-02-2015");     // new Date("M-dd-yyyy");
        var d9_3 = new Date("05-2-2015");     // new Date("MM-d-yyyy");
        var d9_4 = new Date("05-02-2015");     // new Date("MM-dd-yyyy");

        var d10_1 = new Date("2015*05*02");     // new Date("MM*dd*yyyy");
        var d10_2 = new Date("2015&05&02");     // new Date("MM&dd&yyyy");
        var d10_3 = new Date("2015@05@02");     // new Date("MM@dd@yyyy");
        var d10_4 = new Date("2015#05#02");     // new Date("MM#dd#yyyy");
        var d10_5 = new Date("2015$05$02");     // new Date("MM$dd$yyyy");
        var d10_6 = new Date("2015   05   02");     // new Date("MM      dd     yyyy");
        var d10_7 = new Date("2015|05|02");     // 这种不可以
        var d10_8 = new Date("2015=05=02");     
        var d10_9 = new Date("2015~05~02");     // 这种不可以

        var d11_1 = new Date("2015/5/4");     // new Date("yyyy/M/d");
        var d11_2 = new Date("2015/5/04");     // new Date("yyyy/M/dd");
        var d11_3 = new Date("2015/05/4");     // new Date("yyyy/MM/d");
        var d11_4 = new Date("2015/05/04");     // new Date("yyyy/MM/dd");

        var d12 = new Date(1430668800000);      // new Date(ms)  ms:毫秒数

        // document.write( "d1=====" + d1 +"<br><br>");

        // document.write( "d2_1=====" + d2_1 +"<br><br>");
        // document.write( "d2_2=====" + d2_2 +"<br><br>");
        // document.write( "d2_3=====" + d2_3 +"<br><br>");
        // document.write( "d2_4=====" + d2_4 +"<br><br>");
        // document.write( "d2_5=====" + d2_5 +"<br><br>");
        // document.write( "d2_6=====" + d2_6 +"<br><br>");        
        // document.write( "d2_7=====" + d2_7 +"<br><br>");
        // document.write( "d2_8=====" + d2_8 +"<br><br>");
        // document.write( "d2_9=====" + d2_9 +"<br><br>");


        // document.write( "d3_1=====" + d3_1 +"<br><br>");
        // document.write( "d3_2=====" + d3_2 +"<br><br>");
        // document.write( "d3_3=====" + d3_3 +"<br><br>");
        // document.write( "d3_4=====" + d3_4 +"<br><br>");
        
        // document.write( "d4_1=====" + d4_1 +"<br><br>");
        // document.write( "d4_2=====" + d4_2 +"<br><br>");
        // document.write( "d4_3=====" + d4_3 +"<br><br>");
        // document.write( "d4_4=====" + d4_4 +"<br><br>");
        
        // document.write( "d5_1=====" + d5_1 +"<br><br>");
        // document.write( "d5_2=====" + d5_2 +"<br><br>");
        // document.write( "d5_3=====" + d5_3 +"<br><br>");
        // document.write( "d5_4=====" + d5_4 +"<br><br>");
        // document.write( "d5_5=====" + d5_5 +"<br><br>");
        // document.write( "d5_6=====" + d5_6 +"<br><br>");
        // document.write( "d5_7=====" + d5_7 +"<br><br>");

        // document.write( "d6_1=====" + d6_1 +"<br><br>");
        // document.write( "d6_2=====" + d6_2 +"<br><br>");
        // document.write( "d6_3=====" + d6_3 +"<br><br>");
        // document.write( "d6_4=====" + d6_4 +"<br><br>");
        
        // document.write( "d7_1=====" + d7_1 +"<br><br>");
        // document.write( "d7_2=====" + d7_2 +"<br><br>");
        // document.write( "d7_3=====" + d7_3 +"<br><br>");
        // document.write( "d7_4=====" + d7_4 +"<br><br>");        
        document.write( "d7_5=====" + d7_5 +"<br><br>");        

        // document.write( "d8_1=====" + d8_1 +"<br><br>");
        // document.write( "d8_2=====" + d8_2 +"<br><br>");
        // document.write( "d8_3=====" + d8_3 +"<br><br>");
        // document.write( "d8_4=====" + d8_4 +"<br><br>");
        // document.write( "d8_5=====" + d8_5 +"<br><br>");
        // document.write( "d8_6=====" + d8_6 +"<br><br>");
        // document.write( "d8_7=====" + d8_7 +"<br><br>");
        
        // document.write( "d9_1=====" + d9_1 +"<br><br>");
        // document.write( "d9_2=====" + d9_2 +"<br><br>");
        // document.write( "d9_3=====" + d9_3 +"<br><br>");
        // document.write( "d9_4=====" + d9_4 +"<br><br>");
        
        // document.write( "d10_1=====" + d10_1 +"<br><br>");
        // document.write( "d10_2=====" + d10_2 +"<br><br>");
        // document.write( "d10_3=====" + d10_3 +"<br><br>");
        // document.write( "d10_4=====" + d10_4 +"<br><br>");
        // document.write( "d10_5=====" + d10_5 +"<br><br>");
        // document.write( "d10_6=====" + d10_6 +"<br><br>");        
        // document.write( "d10_7=====" + d10_7 +"<br><br>");        
        // document.write( "d10_8=====" + d10_8 +"<br><br>");        
        // document.write( "d10_9=====" + d10_9 +"<br><br>");        
        
        // document.write( "d11_1=====" + d11_1 +"<br><br>");
        // document.write( "d11_2=====" + d11_2 +"<br><br>");
        // document.write( "d11_3=====" + d11_3 +"<br><br>");
        // document.write( "d11_4=====" + d11_4 +"<br><br>");
        
        // document.write( "d12=====" + d12 +"<br><br>");

    </script>
</body>
</html>

 

posted @ 2017-04-05 14:08  十步杀一人千里不留行  阅读(1972)  评论(0编辑  收藏  举报