为什么Safari浏览器感到困惑Date.getDay()的DST在悉尼,AUS时区启动?(Why

2019-07-19 18:47发布

Safari浏览OSX认为,2013年10月6日在澳大利亚一个周六。 这不,它实际上是一个星期天。

复制此问题,只需设置时区到悉尼,澳大利亚,流行在Safari中打开的,开发者控制台,然后输入新的日期(“2013年10月6日”)。 你会得到这样的:

现在切换到西雅图的美国,你会得到这样的:

这个问题也会发生在墨尔本的澳大利亚,但不是为城市的进一步北部如布里斯班(这符合澳大利亚DST分区 ),或者我已经在世界各地测试的其他城市屈指可数。

现在,它只是恰巧,2013年10月6日是悉尼夏令时开始。 。 而同样的错误是在其他年份的其他DST开始日期作出。 似乎没有成为DST结束日期的问题。 似乎没有成为一个问题的DST开始在PDT时区的日期。 此外,Chrome和Firefox不会出现此问题。

我测试过的大多数这种在两个不同的Mac电脑,一个在Snow Leopard上的Safari 5.1.7和一个在Lion上使用Safari 6.0.2。

所以,问题是-这是一个错误,还是有某种合理的理由?

Answer 1:

这确实应该考虑的一个错误-在悉尼技术上讲DST上的2AM 2013年10月6日开始,所以凌晨2点就变成3AM( http://www.timeanddate.com/worldclock/clockchange.html?n=240 )。 看来Safari在这种情况下,想你在午夜的意思是2013年10月6日 - 然后被前一天要回1小时至晚上11点。 这甚至没有意义,因为在凌晨2点的时钟应该往前走一个小时。

我会建议提交本的bug报告 - 因为输出是如此明显的错误

https://developer.apple.com/bugreporter/



文章来源: Why is Safari confused about Date.getDay() for DST start in Sydney, Aus time zone?