做一些看似显而易见的事情我遇到了很多麻烦.我有个约会:
Date.now()
Run Code Online (Sandbox Code Playgroud)
我希望它能在几毫秒之内完成.我无法让它发挥作用.我试过了:
Date.now().getTime();
(Date.now()).getTime();
Date.now().getMilliseconds();
(Date.now()).getMilliseconds();
var date = Date.now();
var ms = date.getTime();
var ms = date.getMilliseconds();
Run Code Online (Sandbox Code Playgroud)
所有这些都失败了,因为显然getTime()和getMilliseconds()(我认为这不是正确的方法)显然不是函数.
我在这做错了什么?
小智 6
你已经拥有了你想要的价值。
var numberOfMillisecondsSinceEpoch = Date.now();
Run Code Online (Sandbox Code Playgroud)
您正在尝试调用 Date 对象上的方法,例如通过调用new Date(). 如果您使用的是Date.now(),这不是必需的或不合适的,而是返回一个数字。
对于不提供 的平台Date.now(),您可以将当前 Date 对象转换为数字以获得相同的值。
var numberOfMillisecondsSinceEpoch = Number(new Date());
Run Code Online (Sandbox Code Playgroud)
Number(new Date()) === Date.now() // if your system is quick enough
Run Code Online (Sandbox Code Playgroud)
Date.now() 已从epoch返回ms,而不是Date对象...
Date.now是Date命名空间1中的方法,与Math.randomMath 相同.
Date(与Math不同)也是一个构造函数.使用new Date()它,它将返回Date对象.
1.属性Date,是一个函数/对象