本文实例讲述了JavaScript引用类型Date常见用法。分享给大家供大家参考,具体如下:
Date类型使用自UTC1970年1月1日午夜(零时)开始经过的毫秒数来保存日期。
创建日期对象的方法:
(1)获得当前日期和时间
var date = new Date();
(2)根据特定的日期和时间创建日期对象
传入的参数:从UTC午夜开始到该日期止经过的毫秒数。为此,提供两个方法Date.parse()
和Date.UTC()
。
1)Date.parse()
方法:接收一个表示日期的字符串,根据这个字符串返回相应日期的毫秒数。若传入的字符串不能表示日期,则返回NaN。实际上,若直接将表示日期的字符串传给Date构造函数,也会在后台调用Date.parse()。
日期字符串的格式因地区而异,将地区设置为美国的浏览器接收下列格式:
- ---"月/日/年"
- ---"英文名月/日/,年"
- ---"英文名星期几缩写 英文名月 日 年 时:分:秒 时区"
- ---"YYYY-MM-DDTHH:mm:ss:sssZ"
var date1 = new Date(Date.parse("December 13,2016")); var date2 = new Date(Date.parse("12/13/2016")); var date3 = new Date(Date.parse("Tue December 13 2016 21:33:33 GMT-0700")); var date4 = new Date(Date.parse("2016-12-13T21:33:33Z"));
等价于
var date1 = new Date("December 13,2016"); var date2 = new Date("12/13/2016"); var date3 = new Date("Tue December 13 2016 21:33:33 GMT-0700"); var date4 = new Date("2016-12-13T21:33:33Z");
2)Date.UTC()
方法:参数分别是年份、基于0的月份、基于1的天数、基于0的小时数、基于0的分钟数、基于0的秒数、基于0的毫秒数,前两个参数(年和月)是必需的。若没有提供天数,则假设天数为1;若没有提供其他参数,则假设其他参数为0。若直接将表示日期的参数传给Date构造函数,也会在后台调用Date.UTC()
,只是日期和时间都是基于本地时间而非UTC时间来创建。
var date1 = new Date(Date.UTC(2016, 11));//GMT时间2016年1月1日午夜零时 var date2 = new Date(Date.UTC(2016, 11, 13, 21, 33, 33));//GMT时间2016年12月13日下午9:33:33 var date3 = new Date(2016, 11);//本地时间2016年1月1日午夜零时 var date4 = new Date(2016, 11, 13, 21, 33, 33);//本地时间2016年12月13日下午9:33:33
Date.now()
方法:返回表示调用这个方法时的日期和时间的毫秒数。
var startTime = Date.now(); ......//执行若干操作 var endTime = Date.now(); alert(endTime - startTime);
等价于在不支持Date.now()
方法的浏览器使用+
操作符
var startTime = + new Date(); ......//执行若干操作 var endTime = + new Date(); alert(endTime - startTime);
PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用:
在线日期/天数计算器:
http://tools.zyiz.net/jisuanqi/date_jisuanqi
在线日期计算器/相差天数计算器:
http://tools.zyiz.net/jisuanqi/datecalc
在线日期天数差计算器:
http://tools.zyiz.net/jisuanqi/onlinedatejsq
Unix时间戳(timestamp)转换工具:
http://tools.zyiz.net/code/unixtime
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript时间与日期操作技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript页面元素操作技巧总结》及《JavaScript操作DOM技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。