簡體   English   中英

JSON日期轉換為時間字符串

[英]JSON date converting into time string

遇到JavaScript日期奇怪,我無法繞過頭腦。

我有通過WebAPI返回的日期/時間:'2012-12-13T12:17:06.080'。 它是在當地時間(-7 UTC)。

通過JavaScript運行此日期時

var d = new Date('2012-12-14T05:32:05.543');
alert(d.toTimeString());

返回22:32:05 MST

然后做

var d = new Date('2012-12-14T05:32:05.543');
alert(d.toLocaleTimeString());

返回10:32:05 PM

每個JavaScript文檔的toTimeString / toLocaleTimeString()表示它應該只提取Time部分,為什么時間會改變? 我應該怎么做才能讓它返回正確的時間部分05:32:05而不創建一個所謂的不需要的功能?

當您為Date()構造函數提供ISO8601時間戳字符串時,它始終將其解釋為UTC。

並非所有瀏覽器的行為方式都相同,有些瀏覽器根本不喜歡這些瀏覽器。

這是解決問題的方法:

獲取日期的部分並手動構造日期對象。

我附上了一個JSBin,展示了http://jsbin.com/iduzaz/3/watch

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM