javascript new Date() 或 moment.js 解析日期错误
javascript new Date() or moment.js parse date wrong
我有一个来自服务器的 DateTime 值,格式如下:
2015-08-16T01:29:00.000Z
然而当我这样做时
new Date('2015-08-16T01:29:00.000Z')
结果是这样的:
Sun Aug 16 2015 04:29:00 GMT+0300 (FLE Daylight Time)
请注意时间是错误的,而不是 01:29 AM is 04:29 AM
同样 moment.js 时间不对。
我该如何解决这个问题?
这是同一时间——服务器将它作为 UTC 提供给您(因此最后是 Z
),然后 Javascript 以浏览器的本地时区 FLE 显示它夏令时。鉴于两次都清楚地说明了它们所在的时区,严格来说没有任何问题。
做什么取决于你到底想要什么。通过
moment.utc('2015-08-16T01:29:00.000Z');
您将 moment.js 设置为 UTC 模式,以 UTC 显示所有内容(如果我对文档的理解正确的话)。
我有一个来自服务器的 DateTime 值,格式如下:
2015-08-16T01:29:00.000Z
然而当我这样做时
new Date('2015-08-16T01:29:00.000Z')
结果是这样的:
Sun Aug 16 2015 04:29:00 GMT+0300 (FLE Daylight Time)
请注意时间是错误的,而不是 01:29 AM is 04:29 AM
同样 moment.js 时间不对。
我该如何解决这个问题?
这是同一时间——服务器将它作为 UTC 提供给您(因此最后是 Z
),然后 Javascript 以浏览器的本地时区 FLE 显示它夏令时。鉴于两次都清楚地说明了它们所在的时区,严格来说没有任何问题。
做什么取决于你到底想要什么。通过
moment.utc('2015-08-16T01:29:00.000Z');
您将 moment.js 设置为 UTC 模式,以 UTC 显示所有内容(如果我对文档的理解正确的话)。