var now = new Date();//自动获取当前日期和时间
复制代码
-
不传参,自动获取当前日期和时间;传参,则需要传入表示该日期的毫秒数(从1970.1.1~指定时间)
-
Date.parse()和Date.UTC()可以将时间转为毫秒数
Date.parse()
- 其入参格式如下:
- “月/日/年”
- “英文月名 日,年”
- “英文星期几 英文月名 日 年 时:分:秒:时区”,如Tue May 25 2004 00:00:00 GMT-0700
- YYYY-MM-DDTHH:mm:ss.sssZ(如2004-05-25T00:00:00)
Date.UTC()
-
其入参分别是年份、基于0的月份(一月是0,二月是1,以此类推)、月中的哪一天(1~31)、小时数(0~23)、分钟、秒以及毫秒数
-
只有年和月是必需的。其余不填时,假设为月中天数为1,其他全都为0
var y2k = new Date(Date.UTC(2000,0));
var allFives = new Date(Date.UTC(2005,4,5,17,55,55));
复制代码
- Date构造函数可以直接接收Date.parse和Date.UTC的参数,它会在内部自动调用parse/UTC进行转换
Date.now()
- 返回调用此方法时的毫秒数
//取得开始时间
var start = Date.now();
...
//取得停止时间
var stop = Date.noew();
复制代码
- 此方法不是所有浏览器支持。不支持的浏览器中,使用+操作符获取Date对象的时间戳:
//取得开始时间
var start = +new Date();
...
//取得停止时间
var stop = +new Date();
复制代码
继承的方法:toLocaleString()、toString()、valueOf()
- 前两者在不同浏览器中展示的日期和时间格式不同,没有太多用处;valueOf()返回日期的毫秒:
var date1 = new Date(2007,0,1);
var date2 = new Date(2007,1,1);
alert(date1 < date2);//true
复制代码
- 可以使用valueOf()比较日期早晚
一些常用方法
-
getTime() 返回表示日期的毫秒数,与valueOf()方法返回的值相同
-
getFullYear() 取得四位数的年份
-
getMonth() 返回日期中的月份,其中0表示一月
-
getDate() 返回月份中的天数(1~31)
-
getDay() 返回星期中的星期几(0~6)
-
getHours() 返回日期中的小时数(0~23)
-
getMinutes() 返回日期中的分钟数(0~59)
-
getSeconds() 返回日期中的秒数(0~59)
-
getMilliseconds() 返回日期中的毫秒数