日付を常に UTC として保存する Web アプリがありますが、それぞれ GMT/BST としてユーザーに表示する必要があります。
私は UTC/GMT の日付 (2013 年 3 月 30 日 22:00) を持っています。GMT/BST の境界を越えるために、これを 1 時間ごとに移動しています。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/