🙌
Date.toISOString は常にUTCの時刻を返す
まとめ
実行環境が JST(日本標準時、UTC+9)の場合でも、toISOString
の出力は 常に UTC の時刻として表示されます。これは、toISOString
が実行環境のタイムゾーンに影響を受けず、UTC の形式で日時を表すからです。なの、実行環境は出力結果に影響しません。
サンプルコード
const date = new Date("2025-01-01T00:00:00+09:00");
console.log(date.toISOString()); // UTC 時刻で表示
// 出力結果: 2024-12-31T15:00:00.000Z
解説
- 入力された日時は 2025-01-01T00:00:00+09:00(JST)。
- JavaScript はこの日時を UTC に変換して内部で管理します。
-
toISOString
はその UTC 表現を文字列で返します。
ポイント
-
toISOString
の結果は常に UTC の文字列表現(末尾に Z が付く)です。 - 実行環境が JST(UTC+9)であっても、この動作に影響はありません。
参考文献
Discussion