【发布时间】:2011-01-06 23:18:05
【问题描述】:
“在“能源危机”年代,国会制定了更早的夏令时开始日期。1974 年,夏令时从 1 月 6 日开始,1975 年从 2 月 23 日开始。两年后,开始日期恢复到四月的最后一个星期日。"
(通过http://aa.usno.navy.mil/faq/docs/daylight_time.php)
这些日期的 Javascript 日期对象中似乎存在错误。如果您将 127627200000 毫秒转换为日期,则它应该是 Thu Jan 17 00:00:00 EDT 1974。这在 http://www.fileformat.info/tip/java/date2millis.htm 上是正确的,但在 http://www.esqsoft.com/javascript_examples/date-to-epoch.htm,表示它转换为 1974 年 1 月 16 日星期三 23:00:00 GMT-0500(东部标准时间)。如果您在 javascript 中创建一个新的 Date(127627200000) 对象,它会提供后一个日期转换。这发生在所有主要浏览器中。
我无法想象这是第一次给任何人带来问题,但是通过在线搜索我找不到任何其他此问题的案例。有谁知道是否有针对此问题的现有修复或更简单的修复,而不是手动检查 Javascript 转换错误的日期?还有其他日期这是个问题吗?
【问题讨论】:
-
啊!!全球化的乐趣……你有没有想过,1974年美国可能有夏令时,其他国家可能没有?并且为了尽可能广泛地使用(更不用说更简单的开发过程)JavaScript 可能没有一个表格来包含每个可能的国家/地区的所有可用 DST?
标签: javascript dst