首頁  >  文章  >  web前端  >  為什麼 Chrome 67 回傳 1970 年之前日期的時區偏移不準確?

為什麼 Chrome 67 回傳 1970 年之前日期的時區偏移不準確?

Barbara Streisand
Barbara Streisand原創
2024-11-10 05:55:02495瀏覽

Why Does Chrome 67 Return an Inaccurate Time Zone Offset for Pre-1970 Dates?

瀏覽器、時區和Chrome 67 的問題(歷史時區更改)

在Chrome 更新到版本67 時,用戶遇到了不一致的情況在日期時區偏移中。具體來說,使用者在檢索 1970 年之前的日期的時區資訊時注意到不同瀏覽器返回的偏移值存在差異。

觀察到的錯誤:

在Chrome 67 中, new Date("1900-01-01T00:00:00").getzoneOffset(TimezoneOffset(TimezoneOffset(TimezoneOffset() 返回,表示時區距UTC 偏移2 小時30 分鐘,而其他瀏覽器返回-180 (UTC 3)。

說明:

此差異是由於 Chrome 67 處理歷史時區資料的方式發生了變化。 1919 年之前,歐洲/莫斯科的時區偏移為 2 小時 30 分鐘,而不是整數小時。 Chrome 67 向下捨入到最接近的整小時,導致觀察到的 -150 偏移。

影響:

不一致可能會影響依賴時區敏感的應用程式訊息,特別是 1970 年之前的日期。

解決方案:

為了緩解此問題,建議修改代碼以避免請求1970 年之前的日期的時區信息,因為IANA 時區數據庫可能無法提供該時期的完全準確的數據。此外,值得考慮的是此變更對可能依賴 Chrome 中先前時區偏移行為的現有程式碼的潛在影響。

以上是為什麼 Chrome 67 回傳 1970 年之前日期的時區偏移不準確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn