之间有什么区别
new Date().valueOf()
和
new Date() * 1
两者都给出相同的价值,是否有任何性能差异? (只是出于好奇)
答案 0 :(得分:6)
在乘法表达式中使用对象隐含地涉及到.valueOf()
的调用,因此根本没有区别。也就是说,表达方式
new Date() * 1
解释涉及尝试将*
运算符左侧的操作数作为数字。这就是.valueOf()
方法应该做的事情。对于Date实例,返回毫秒时间戳值。
请注意
Date.now()
也是等同的。 (不是new Date().now()
;" now"函数是Date构造函数的属性。)
答案 1 :(得分:3)
你可以在这里看到:
http://jsperf.com/new-date-test-1
(new Date()).valueOf
比new Date() * 1
看起来new Date() * 1
需要执行操作,之后才调用.valueOf方法。
希望它有所帮助。