繁體中文

開發者工具·Unix時間戳轉換器

Z 的意思:UTC、ISO 8601 時間戳中的偏移量和指示符

· 工作原理

時間戳 iso-8601 時區

兩個帶有 Z 和偏移指示符的日期時間路徑同時相遇
原始 ToolAcre 向量圖

轉換器和 API 將瞬間列印為 ISO 8601 字串,而尾隨 Z 或偏移量是人們跳過的部分。這篇文章逐條解釋了該格式,以便您可以正確讀取 UTC 和本地輸出。

兩個字串,一個瞬間 — 10:00:00Z 和 12:00:00+02:00 並排小時,而讀者認為它們相隔兩個小時

`2025-02-03T10:00:00Z` 和 `2025-02-03T12:00:00+02:00` 命名一瞬間。第二個字串顯示提前兩小時的掛鐘,並提供減去這些小時所需的偏移。僅讀取小時欄位會在同時發生的事件之間產生虛構的間隙。

ToolAcre 將兩個字串傳遞給 Date 並傳回紀元秒、紀元毫秒和規範的 UTC ISO 字串。相同的數值結果才是決定性的比較。當末尾的指示符說明差異時,改變的鐘面並不意味著改變了經過的時間。

安全性的比較過程是先將每個字串標準化為紀元毫秒。如果這些整數匹配,則明顯的時鐘差異是表示而不是經過的時間。

ISO 8601 日期時間剖析 — 日期、T 分隔符號、時間、秒小數和區域指示符

此工具產生的 ISO 值具有日曆日期、`T`、時分秒欄位、三位數毫秒分數和尾隨 `Z`。這個確切的形狀來自 `toISOString()`。輸入處理範圍更廣,因為 Date 解析提供的字串,但錯誤訊息建議使用明確值,例如 `2024-03-01T09:30:00Z`。

分隔符號使各部分清晰易讀;終端指示符立即確定。分數在一秒鐘內優化位置而不改變區域。比較 API 輸出時,請保留最終指示符。在刪除將時鐘映射到 UTC 所需的資訊之前截斷螢幕截圖。

Z 代表祖魯語 — 為什麼 Z 表示 UTC、它起源於軍事和航空時區,以及為什麼它與無指示符不同

在此實作中,`Z` 被偵測為明確區域,`toISOString()` 將其用於 UTC。該工作簿的軍事起源帳戶未記錄在儲存庫中,因此本文不會將其作為來源歷史進行重複。操作事實較窄且可測試:尾隨 Z 阻止本地時間假設。

沒有指示符不是 Z 的另一種拼法。 ToolAcre 將 `assumedLocal` 設定為缺少 Z 或數字偏移量的日期時間,然後告訴使用者哪個瀏覽器區域提供了解釋。只要原始時鐘是本地時鐘,用 Z 取代丟失的後綴就會改變預期的時刻。

在此轉換器中,Z 標記 UTC 形式;它的命名歷史位於儲存庫證據之外

諸如 `+02:00` 之類的後綴記錄了當時寫入的時鐘與 UTC 之間的差異。它不識別城市。許多區域可以共享一個偏移量,並一個區域可以在另一個日期使用另一個偏移量。該字串保留了讀數,而不是產生它的政治規則。

此限制對於重複規劃很重要。 API 可以用 `+02:00` 忠實地報告過去的時刻,但僅靠後綴無法計算明年冬天的 09:00 會議。 Epoch 轉換只需要提供的偏移量;未來的掛牆時間調度需要在此面板之外有一個命名區域和規則感知邏輯。

工作範例:一個紀元,兩個讀數 — UTC 值和轉換器顯示的本地值,並確認它們命名為同一時刻

使用紀元 1,738,577,600 秒進行本文的檢查。轉換器呈現 `2025-02-03T10:00:00.000Z`。 `2025-02-03T12:00:00+02:00` 的來源字串會轉換回相同的計數,因為其兩小時後的牆壁讀數由正的兩小時偏移量平衡。

瀏覽器本機行可以顯示第三個時脈時間。這不會產生第三個事件;這是另一個超過 1,738,577,600,000 毫秒的格式化過程。使用秒或 ISO 驗證身份,然後僅將每個標記時鐘用於其代表的區域的觀眾。

這個等式也可以成為一種迴歸裝置:解析兩個來源字串並斷言一個紀元值。此測試保護偏移算術,而不固定與區域設定相關的顯示散文。

缺少的指示符 — 一個空的 2024-05-01T10:00:00 是不明確的,以及不同語言如何解釋它

缺少指示符的情況需要進行一項改進。根據此處實施和測試的 ECMAScript 規則,諸如 `2025-02-03` 之類的裸日期被讀取為 UTC。諸如 `2025-02-03T10:00:00` 之類的裸日期時間被讀取為本地並標記。將兩者簡單地稱為“模棱兩可”會與程式碼相矛盾。

交換瞬間的實用安全形式仍包含 Z 或偏移量。透過面板的 `datetime-local` 控制項輸入時,本地日期時間可能是有意的,但在共享之前複製其產生的 ISO 字串。此轉換記錄了從掛鐘得出的當前環境的哪個瞬間。

缺少的指示符並不總是不明確的:此實作區分日期和日期時間

ISO 8601 涵蓋的符號比此轉換器演示的多,但儲存庫不提供間隔、持續時間或週日期的解析器或測試。對於可靠記錄範例之外的字串,日期接受可能會因平台而異。因此,本文避免將面板描述為通用 ISO 語法驗證器。

如果 API 合約允許專用日期形式,請使用該 API 的解析器對其進行驗證。 ToolAcre 的日期到紀元路徑適合明確的日期時間及其發出的本地選擇器形狀。成功的日期解析證明該瀏覽器接受了一個字串,而不是每個符合標準的消費者都必須接受它。

持續時間、間隔和週日期超出此處所示的接受輸入

在比較時脈欄位之前,先讀取時間戳一直到其後綴。 Z 將書面時鐘錨定為 UTC;數字偏移量將算術結果傳回 UTC;無區域日期時間要求瀏覽器使用本地解釋。儘管前綴看起來相似,但這些結尾回答了不同的問題。

轉換器標記其產生的通用輸出並在假定當地時間時進行報告。使用這些通知作為結果的一部分,而不是裝飾。複製的小時值沒有其指示符是不完整的證據,而紀元或規範的 ISO 行可以在讀者之間保持即時完整。