相差一千倍
秒統計紀元後經過的整秒,毫秒統計千分之一秒,所以同一時刻的毫秒值是秒值的 1,000 倍。例如,1700000000 s 與 1700000000000 ms 都對應 2023-11-14T22:13:20Z。
為什麼位數只是提示?
當代正數通常是 10 位秒或 13 位毫秒,但接近紀元的值較短,負數帶符號,未來值會增加。可靠程式應接受明確單位,或至少向使用者顯示自動辨識結果。
精度與安全整數
JavaScript Number 只能在 Number.MAX_SAFE_INTEGER 以內精確表示整數。本站換算 epoch 單位時使用 BigInt,避免 16 位或 19 位輸入在計算毫秒日期前就被捨入。最終日期顯示仍受瀏覽器毫秒精度與日期範圍限制。
排查一千倍錯誤
若日期落在 1970 年附近,常見原因是把秒當成毫秒;若結果遙遠到超出範圍,則可能把毫秒當成秒。先核對欄位文件,再手動選擇單位,比只看位數更可靠。
四種單位表示同一時刻
| 單位 | 數值 | 相對於秒的倍數 |
|---|---|---|
| 秒 | 1700000000 | 1 |
| 毫秒 | 1700000000000 | 1,000 |
| 微秒 | 1700000000000000 | 1,000,000 |
| 奈秒 | 1700000000000000000 | 1,000,000,000 |
這四個數值都對應 2023-11-14T22:13:20Z。乘以 1,000 是更換單位,並非改變時刻,也不會增加真實測量精度。可在轉換工具逐一輸入並選擇對應單位。
為何結果跑到 1970 年或遙遠的未來?
現代事件顯示為 1970 年 1 月,常見原因是將秒按毫秒解讀;出現幾萬年後的日期,則可能將毫秒當成秒。應先核對來源系統的欄位文件,不要先改數值。10 位與 13 位只適合輔助辨識現代常見資料。
例如 1000 秒是 1970-01-01 00:16:40 UTC,1000 毫秒是當天 00:00:01,兩者都合法。處理單位一致的檔案時,可在批次轉換器固定單位,避免歷史數值被誤判。
精度損失與負數取整
1700000000123 毫秒比整秒多出 123 毫秒,轉為整數秒後這部分會丟失。本工具按單位區間的起點向下取整,因此 -1 奈秒屬於毫秒 -1,而非毫秒零。
微秒與奈秒輸出保留原始整數精度;ISO 日期顯示到毫秒,有更細的餘數時會提示。資料庫稽核或精確往返轉換應保留原始整數,只存可讀日期無法還原毫秒以下的細節。