🌐 JA

📅 ISO 8601 日付フォーマッター

ブラウザが認識するISO 8601やRFC 2822などの日付・時刻とUnixタイムスタンプを、複数の形式で表示します。数字だけの入力は、桁数に応じて秒またはミリ秒のUnixタイムスタンプとして扱います。UTCオフセットを選ぶと、その固定オフセットでのISO 8601表現も確認できます。

ガイド

詳しく見る

01

1. ISO 8601とは

ISO 8601は日付と時刻を表記する国際標準形式で、「YYYY-MM-DDTHH:mm:ss.sssZ」のように年-月-日と時:分:秒をTで区切り、末尾にUTC(Z)またはタイムゾーンオフセット(+09:00など)を付けます。ログ、APIレスポンス、データベース保存などで人間にも機械にも誤解なく読める形式として広く使われています。

02

2. Unixタイムスタンプとオフセット計算

Unixタイムスタンプは、1970-01-01T00:00:00Zからの秒数またはミリ秒数です。このツールは、先頭のマイナス記号を除いた桁数で数値入力を判定します。1~11桁は秒、12桁以上はミリ秒として扱い、JavaScriptのDateの範囲外の値は無効な日付になります。固定UTCオフセットを選ぶと、UTCの時刻にオフセット(分)を加え、「壁時計の時刻」として表示し、元のオフセットを末尾に付けます。この計算はブラウザのローカルタイムゾーンに左右されません。

03

3. RFC 2822とHTTP日付

RFC 2822はメールヘッダーでよく使われ、HTTP Dateヘッダーは「Mon, 15 Jan 2024 09:30:00 GMT」のようなGMT形式を使います。JavaScriptのtoUTCString()はHTTP形式のUTC日付文字列を生成します。Date.parse()はこの形式と対応するISO 8601文字列を認識できるため、ログファイル、APIヘッダー、データベースダンプなどから取得した対応形式の日付を変換できます。

よくある質問

どの形式の日付を入力できますか?
ISO 8601(2024-01-15T09:30:00Z)、RFC 2822(Mon, 15 Jan 2024 09:30:00 GMT)、Unixタイムスタンプ(秒またはミリ秒単位の数値)、およびブラウザのDate.parse()が認識するほとんどの一般的な日付文字列を入力できます。
Unixタイムスタンプが秒かミリ秒かはどう判別しますか?
数値入力では、先頭のマイナス記号を除いた桁数を数えます。1~11桁は秒、12桁以上はミリ秒として扱います。JavaScriptのDateの範囲外の値は無効な日付になります。
選択したオフセットのISO 8601はどう計算されますか?
選択したUTCオフセットでは、UTCの時刻にオフセット(分)を加えてそのオフセットの壁時計時刻を求め、年-月-日 時:分:秒.ミリ秒と、+HH:MMまたは-HH:MMの接尾辞で表示します。この選択オフセットは固定値のため、ブラウザのローカルタイムゾーンには左右されません。ローカルタイムゾーンを選ぶと、ブラウザはその時点のローカルオフセットを使うため、夏時間が反映される場合があります。
入力した日付はサーバーに送信されますか?
いいえ。すべての変換はブラウザのJavaScript内だけで行われ、サーバーには送信されません。