【发布时间】:2013-02-21 03:31:38
【问题描述】:
我有一个始终将日期存储为 UTC 的网络应用,但它们需要分别以 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 个日期是不正确的。
有什么想法吗?
【问题讨论】:
标签: javascript date datetime timezone timezone-offset