从毫秒(13 位数字)转换时如何避免结果中出现前缀'Invalid date'



我正在转换从json中获取的13位数字时间戳。一切似乎都工作,但一个-前缀无效日期在可读时间之前。

代码如下:

var timestamp=new Date(event.feature.getProperty('updated'))
var humanTime=timestamp+Date(1970,1,1);

从json中更新的值是' 1432205083551 '(13位数字)。所以结果是:

Invalid DateTue May 26 2015 19:07:05 GMT+0700 (SE Asia Standard Time)

可读。一切似乎都是正确的,但它总是以Invalid Date开头的每一行。

无效日期部分来自于第一个日期是使用字符串构造的事实。它应该是一个数字(可通过parseInt()获得)

var timestamp = new Date(parseInt(event.feature.getProperty('updated')))

顺便说一句,我不明白你用humanTime变量做什么…event.feature.getProperty('updated')似乎已经是自1970年以来的毫秒数。打印一个人类可读的时间戳可以通过调用toString():

来完成
alert(timestamp.toString())

最新更新