如果我将当前时间作为函数的参数传递,哪种方式正确,Date()
或new Date()
?以下面的代码为例,哪一个更好?
function logTime(time) {
console.log(time);
}
//One
var now = new Date();
logTime(now);
//Two
logTime(new Date());
//Three
logTime(Date());
答案 0 :(得分:5)
使用new Date
可能更好,因为您可以获得一个真正的Date对象。
> var d = Date();
undefined
> d
'Thu Aug 01 2013 02:22:19 GMT+0200 (CEST)'
> typeof d
'string'
Date,当用作普通函数时,返回一个String。当用作构造函数时,它返回一个具有Date原型的对象,因此您可以使用方法getTime
,getSeconds
等。
> d = new Date();
Thu, 01 Aug 2013 00:24:41 GMT
> typeof d
'object'
> d.getTime();
1375316681520
> d.getSeconds();
41
答案 1 :(得分:2)
Date()
只会输出时间戳
new Date()
将返回Date
的实例,您可以使用它来调用它的函数。当您传递参数以手动设置日期时,它对new
更有用。
答案 2 :(得分:0)
首先,如果您需要其属性中的某些内容,new
运算符是必不可少的。在此处阅读 note -block:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
...到缓存 -thing:将它存储在变量中是没有意义的,因为你只需要时间戳。