我有以下代码将纪元转换为日期时间。
var newDate = moment.unix(1525168800000).format("MM/DD/YYYY");
alert(newDate);
当我检查epochtimeconvetrer处的时间戳时,我恢复了正确的时间,
GMT: Tuesday, May 1, 2018 10:00:00 AM
但是当我尝试通过解析时刻来获取相同的值时,得到无效日期,
09/05/50300
最佳答案
Unix time是距纪元的秒数。您传递的是从纪元开始的毫秒。在将值传递给方法之前,将该值除以 1000:
moment.unix(1525168800).format("MM/DD/YYYY")
// "05/01/2018"
或者,您可以将值直接传递给 moment()
构造函数,该构造函数接受纪元的毫秒数。
moment(1525168800000).format("MM/DD/YYYY")
// "05/01/2018"
当您将值粘贴到 epochconverter 并尝试对其进行转换时,该网站清楚地显示一条消息,其中显示“假设此时间戳以毫秒为单位”。请参阅下面的快照:
这就是为什么它能正确显示结果。
关于javascript - Moment.js,转换纪元时日期时间无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51925837/