2013-03-06 65 views
2

我有一個web應用程序,它總是將日期存儲爲UTC,但它們需要分別以GMT/BST的形式顯示給用戶。BST機器上的Javascript GMT/BST日期

我有一個UTC/GMT日期(2013年3月30日22:00),我每小時移動一次以跨越GMT/BST邊界。我正在使用setTime()方法操縱日期。

所以,我的輸入時間戳,顯示時間,UTC時間如下:

  • 1364808000 - 22:00 GMT + 0000 - 22:00
  • 1364685500 - 23:00 GMT + 0000 - 23 :00
  • 1364688000 - 00:00 GMT + 0000 - 00:00
  • 1364691600 - 02:00 GMT + 0100 - 01:00
  • 1364695200 - 03:00 GMT + 0100 - 02:00
  • 1364698800 - 04:00 GMT + 0100 - 03:00

當機器處於GMT,它輸出:

  • 1364808000 - 22:00 GMT + 0000 - 22:00
  • 1364685500 - 23:00 GMT + 0000 - 23:00
  • 1364688000 - 00:00 GMT + 0000 - 00:00
  • 1364691600 - 02:00 GMT + 0100 - 01:00
  • 1364695200 - 03:00 GMT + 0100 - 02:00
  • 1364698800 - 04:00 GMT + 0100 - 03:00

當機器在BST,它輸出:

  • 1364808000 - 22:00 GMT + 0000 - 22:00
  • 1364685500 - 23:00 GMT + 0000 - 23:00
  • 1364688000 - 00:00 GMT + 0000 - 00:00
  • 1364691600 - 00:00 GMT + 0000 - 01:00
  • 1364695200 - 02:00 GMT + 0100 - 02:00
  • 1364698800 - 03:00 GMT + 0100 - 03:00

現在,在我看來,最後3個日期是不正確的。

任何想法?

這裏有一個小提琴:http://jsfiddle.net/twilson/WRbyh/

回答

1

原來機器,而在BST時間,沒有配置自動更改時區相匹配的日期。

由於在4月6日的結果,它仍然列爲GMT標準時間,而不是GMT夏令時間

選中Automaticlly change選項,修復了此問題。