我正在开始使用JavaScript。我咨询了我的同事如何获取当前时间。
他用以下代码告诉我:
> date = new Date()
> date.valueOf()
但是大多数人都是这样做的:
> Date.now()
第二种方法更简单易读。
如果我想说服我的同事使用第二个,我应该如何向他解释差异?
有几种获取JavaScript当前时间的方法:
new Date()
创建一个Date
代表当前日期/时间的对象new Date().valueOf()
返回自UTC 1970年1月1日午夜以来的毫秒数new Date().getTime()
功能上等同于 new Date().valueOf()
Date.now()
在功能上等同于上述2种方法如注释和MDN链接中所述,Date.now()
Internet Explorer 8不支持。因此,如果要考虑IE 8兼容性,则应new Date().valueOf()
以稍微降低代码可读性为代价来使用。
或者,如果您要使用Date.now()
但必须与不支持它的浏览器兼容,则可以在JavaScript文件中的某些位置放置以下代码,这将增加对它的支持。
if (!Date.now) {
Date.now = function() {
return new Date().getTime();
}
}