6

我已经在 Firefox(版本 21)的控制台中运行了以下命令,并且得到了我不期望的结果。

new Date(1362891600000);

var date = new Date(1362891600000);
var time = date.getHours();
new Date(date.setHours(date.getHours() + 24));

结果真的让我陷入了循环。

第一个日期显示为东部夏令时间,而第二个日期显示为东部标准时间。这完全是倒退。IE 或 Chrome 不会发生这种情况。

这里发生了什么? 在此处输入图像描述

4

1 回答 1

5

这绝对是 Firefox 中的一个错误。您可能应该向他们报告。

但是,请注意,偏移量之后的任何内容都是非标准的,并且支持在浏览器和操作系统之间存在很大差异。

例如,一些浏览器显示时区名称,而其他浏览器显示缩写或内部 id。此外,有些保留自己的字符串,有些使用操作系统返回的值。在 Windows 上,与 Linux 或 Mac 上的时区数据库不同。此外,某些浏览器可能会使用语言、区域设置或文化设置来本地化此字符串。

如果您知道该值在他们自己的本地时区中,则可以将其显示给用户。但不要依赖它来做任何关键的事情。

于 2013-06-04T15:01:46.973 回答