我正在閱讀有關各種實現中JavaScript日期對象的混合/最大值的信息。全部JavaScript日期對象?
Mozilla文檔說JavaScript支持UNIX時代的「-100,000,000 days to +100,000,000」。如果我的數學是正確的,那麼兩邊應該是8.64e15毫秒。
Microsoft MSDN認爲JScript支持UNIX時代的「approximately 285,616 years」。
谷歌v8的單元測試表明從時代開始+/-1e8 days。
的ECMAScript 5.1 specifies a little more clearly:
時間是在ECMAScript中自1970年1月1日 UTC測量單位爲毫秒。在時間值閏秒被忽略。假定 每天正好有86,400,000毫秒。 ECMAScript Number 值可以表示從-9,007,199,254,740,992到 9,007,199,254,740,992的所有整數;這個範圍足以測量時間到 毫秒的精度,對於1970年1月1日UTC以前的或近期的大約 285,616年內的任何時刻。
通過的ECMAScript Date對象支持倍實際範圍是 略小:究竟-100,000,000天在1970年1月1日 UTC的開始相對測量午夜億天 。這給出了一個範圍的8,640,000,000,000,000毫秒 01月01日的兩側,1970年UTC
我很好奇,有沒有人知道任何實現其不實際上是「從時代+/- 1E8天」支持此範圍?
學習你正在考慮的應用程序將是非常有趣的,其中這個細節將是重要的:-) – Pointy
他正在寫一個助焊劑電容器應用程序。 –
當我滑倒並撞擊水槽邊緣時,我有了這個有趣的想法。 – mckamey