Chrome 67 中的歷史性時區變化:號召性用語
簡介:
簡介:最近更新67 引起了開發人員對時區計算不準確的擔憂。本文探討了該問題及其潛在影響,並提供了減輕其影響的指導。
問題:更新到 Chrome 67 後,使用者遇到了輸出差異getTimezoneOffset() 方法適用於 1900 年之前的日期。具體來說,與其他瀏覽器相比,Chrome 67 針對該時期的日期會傳回不同的時區偏移。
分析:
這種差異背後的罪魁禍首在於 Chrome 使用的底層時區資料。在先前的版本中,Chrome 依賴作業系統的時區資訊。然而,在 Chrome 67 中,瀏覽器似乎開始捆綁自己的 IANA 時區數據,這與作業系統提供的數據不同。 IANA 時區資料庫包含歷史時區數據,包括那些1900 年之前就已經存在。值得注意的是,這些數據不能保證在所有時間和地點都是準確的,因為收集全面的歷史資訊具有挑戰性。
後果:這種差異可能會嚴重影響依賴準確時區資訊來獲取歷史資料的應用程式。假設所有過去日期的時區偏移一致的程式碼現在可能會產生不正確的結果。對於處理接近 1900 年邊界的日期的應用程式來說,其影響尤其令人擔憂。
考慮使用時區庫。第三方庫可以提供更準確、更全面的時區信息,包括歷史數據。
以上是為什麼 Chrome 67 回傳 1900 年之前日期的時區偏移不準確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!