new Date()前面使用 +发生了什么
当你看到有人使用 +new Date()的时候,可能会惊讶,这是什么用法
// 返回一个时间戳 就是距离 1970年1月1日0时0分的毫秒数
+new Date()
其内部实际是执行了
- 将 new Date()转换成 Number类型, 如果转换失败,就返回NaN
+new Date会调用 Date.prototype.valueOf() 方法; 而MDN-valueOf中解释,valueOf和直接 new Date().getTIme() 是一样的效果
所以,以下是等价的
+new Date()
new Date().valueOf()
new Date().getTime()