絕對時刻與牆上時間
絕對時刻是唯一的;本地牆上時間可能有歧義,因為它把日曆欄位與地區規則組合在一起。從時間戳轉換到某個時區是確定的,而從本地日期轉換為時間戳有時必須作出選擇。
缺口與重疊
時鐘向前撥時,部分本地時間從未發生;向後撥時,一段本地時間會以不同 UTC 偏移出現兩次。可靠的排程介面應拒絕缺口,並要求使用者為重疊時間選擇偏移。
儲存正確的資訊
記錄過去事件時,應儲存絕對時刻。安排未來重複事件時,通常還要儲存 IANA 時區,因為未來偏移可能隨規則改變。固定偏移無法表達一個地區的完整規則。
測試建議
測試日光節約時間切換前後、UTC 跨日,以及瀏覽器與後端時區資料庫版本不同的情況。不要用目前偏移推算全年日期,也不要把城市名稱當作固定小時差。
紐約日光節約時間的範例
| 當地日期與鐘點 | 發生什麼 | 如何處理 |
|---|---|---|
| 2024-03-10 02:30 | 春季調快時鐘跳過這段 | 改用存在的鐘點 |
| 2024-11-03 01:30 | 秋季調慢時鐘後出現兩次 | 選擇 UTC−04:00 或 UTC−05:00 |
| 2024-11-03 03:00 | 只出現一次 | 正常轉換 |
重複的 01:30,較早一次為 2024-11-03T05:30:00Z,較晚一次為 2024-11-03T06:30:00Z,兩者都有效。程式若自行挑選,會議可能與原意相差一小時。可在日期轉時間戳或兩個時區時間轉換驗證。
太平洋標準時間與洛杉磯當地時間
PST 固定表示 UTC−08:00。洛杉磯日光節約時間期間使用 PDT,即 UTC−07:00。北京目前全年採用 UTC+08:00,因此洛杉磯在標準時間期間通常慢 16 小時,在日光節約時間期間慢 15 小時。
北京時間 2026 年 10 月 13 日 09:26,對應洛杉磯 10 月 12 日 18:26。America/Los_Angeles 會依當日規則計算;全年固定使用 PST 則得到 17:26,無法代表實際當地鐘點。
安排未來活動要檢查什麼?
輸入活動的實際日期,來源與目標皆選擇城市或 IANA 時區,並核對是否跨到前一天或後一天。週期性會議應保存來源時區,不能只保存今天的偏移。規則可能因政策改變,重要未來安排需配合更新的時區資料核對。
時間戳轉時區顯示已確定的時刻;兩地時間轉換還需先解讀來源鐘點,兩者用途不同。