即時精度 / 03

目前的毫秒時間戳

複製目前 13 位 Unix 毫秒數,並與秒、微秒和奈秒單位比較。

目前數值

來自裝置時鐘
Unix 秒—
毫秒
—
微秒
—
奈秒
—

由裝置的毫秒級時鐘推算

為什麼目前毫秒通常是 13 位?

目前日期距離 Unix 紀元約有 1.7 兆毫秒,因此現代正數通常有 13 位。位數會隨日期變化:接近 1970 年的值較短,負數帶符號,未來數值會繼續增加,所以不能把「13 位」當作唯一驗證條件。

JavaScript 與精度

Date.now() 傳回來自裝置時鐘的整數毫秒。將該值乘以 1,000 或 1,000,000,可以分別表達微秒或奈秒單位,但不會產生新的計時精度。需要真正次毫秒量測的系統應使用合適的高精度時鐘,並明確定義它與 Unix 紀元的關係。

儲存與介面注意事項

在資料庫或 API 中,應同時記錄欄位單位。秒值寫入毫秒欄位會落在 1970 年附近,毫秒值寫入秒欄位則可能溢位或得到遙遠未來日期。JavaScript 一般 Number 也有安全整數上限;處理 16 位或 19 位值時,應避免在換算前發生捨入。

如何操作這個工具

介面或資料庫註明毫秒時,複製毫秒行。秒行將同一裝置讀數除以 1,000;微秒與奈秒只是單位換算,並非獨立的高精度量測。

輸入與輸出範例

輸入或設定預期結果
1700000000 · s1700000000000 · ms
1700000000000 · ms1700000000000000 · µs
1700000000000 · ms1700000000000000000 · ns

使用結果前的檢查

裝置時鐘不準,目前數值也不準;本頁不使用外部授時服務校準裝置。已保存的數值請到時間戳轉日期選毫秒。程式耗時應用單調時鐘測量,系統校時可能改變日曆時間。

常見問題

目前的毫秒時間戳為什麼通常是 13 位?

現代日期距離 1970 年紀元約有 1.7 兆毫秒,因此正數通常是 13 位;較早或遙遠未來的日期可能不是。

Date.now() 傳回什麼?

JavaScript Date.now() 傳回裝置時鐘所對應的 Unix 毫秒整數。

把毫秒乘一百萬就是精確奈秒嗎?

不是。這只能表達奈秒單位,新增的末尾零並非裝置實際量測的次毫秒精度。

工具 / 01—06

更多時間戳工具

每個工具都從明確的輸入開始,提供明確的結果。