Как всегда, лучше проверить спецификации:)
В этом случае я был очень шокирован, увидев это в разделе 15.9.1.9 ECMA-262 :
Реализация ECMAScript не должна пытаться определить, относится ли точное время к летнему времени, а только к тому, действовало ли летнее время, если бы текущий алгоритм летнего времени использовался в то время,Это позволяет избежать сложностей, таких как учет лет, когда языковой стандарт наблюдался в летнее время круглый год.
Другими словами, соответствующая реализация ECMAScript не позволяет быть исторически точной.
Теперь, следуют ли все реализации этому или нет, я не уверен ... но он действительно предлагает вам некоторую отдельную библиотеку, если вы хотите получить исторически точные часовые пояса ... гдеКонечно, «исторически точный» не должен быть почти таким же далёким, как 1974 год: США изменили график ТЛЧ в 2007 году, а другие страны сделали это совсем недавно (и с меньшим количеством предупреждений).
1 Первое вхождение 15.9.1.9.По какой-то причине это происходит дважды - один раз для «Настройки перехода на летнее время» и один раз для «Местное время».Ничего себе.