2015-08-16 98 views
2

我有來自服務器按以下格式的日期時間值:JavaScript的新的日期()或moment.js解析日期錯

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相同,它得到的是錯誤的時間。

我該如何解決這個問題?

回答

5

這是同一時間 - 服務器將它作爲UTC(因此最終爲Z),然後Javascript會在瀏覽器的本地時區FLE Daylight Time中有用地顯示它。鑑於這兩個時間都明確指出了它們的時區,嚴格來說沒有任何問題。

怎麼辦取決於你想要的東西。通過這樣做

moment.utc('2015-08-16T01:29:00.000Z'); 

您將moment.js放在UTC模式下,以UTC顯示所有內容(如果我理解了正確的文檔)。

+0

美麗!謝謝! – user2818430