2013-02-20 46 views

回答

2

這兩個時間戳表示相同的時間:

Sun Apr 14 2013 20:00:00 GMT-0400 (EDT) 
Mon Apr 15 2013 00:00:00 UTC 

你得到第一,但預計第二。日期構造函數似乎需要UTC時間。

如果你這樣做:

var date = new Date('2013-04-15 EDT'); 
console.log(date); 

那麼你可能會得到預期的結果


編輯:This behavior is bizarre。此代碼按照您的意圖運行:

var date = new Date('Apr 15 2013'); 
console.log(date); 

Mon Apr 15 2013 00:00:00 GMT+XYZ 
+0

啊我看,我把日期設置它假定UTC時區?無論如何在瀏覽器的當前時區中設置日期? – 2013-02-20 09:36:33

+0

任何方式來知道瀏覽器時區? – 2013-02-20 09:36:57

+0

@CaseyFlynn:你想要去哪裏?您是否在尋找代表查看頁面的查看器時區的一天的開始時間戳? – Eric 2013-02-20 09:39:47

0

因爲new Date()使用UTC時,toString()使用當前的時區。

如果你要打印的UTC時間,你應該使用

var date = new Date('2013-04-15'); 
console.log(date.toUTCString()); 
相關問題