1986~1991年JS时间差一小时的奇怪问题

Posted 神神的蜗牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1986~1991年JS时间差一小时的奇怪问题相关的知识,希望对你有一定的参考价值。

遇到这么个奇葩问题,发现1986~1991年部分浏览器在计算日期时,会莫名其妙相差一个小时,遇到这么一个大坑差点被活埋了。
看图:

对比了三个浏览器,360极速,Edge,Chrome,只有Chrome和服务端计算结果一致。另外两个都是晚了一小时,
实在是莫名其妙。。。

经过几番搜索之后,发现原来是夏令时的原因。

1986年至1991年,每年四月的第2个星期日早上2点,到九月的第2个星期日早上2点之间。
1986年5月4日至9月14日(1986年因是实行夏令时的第一年,从5月4日开始到9月14日结束)
1987年4月12日至9月13日,
1988年4月10日至9月11日,
1989年4月16日至9月17日,
1990年4月15日至9月16日,
1991年4月14日至9月15日。
1992年起,夏令时暂停实行

于是试了下,换个月份,3月来试试

果然换其他月份就都是正常的,确定是夏令时的问题。。。哎,无语了

参考:
https://baike.baidu.com/item/夏令时/1809579?fr=aladdin

以上是关于1986~1991年JS时间差一小时的奇怪问题的主要内容,如果未能解决你的问题,请参考以下文章

Linux发展及

Linux的环境和来源

DataBinding 大坑总结(网上我暂时搜不到解决方法)

日本房价崩盘对我们有什么启发

Async.js解决Node.js操作MySQL的回调大坑

LeetCode 1986. 完成任务的最少工作时间段(状压dp,子集枚举)