日付フォーマッターとパーサー
Moment.js、strftime、Unicode LDML のパターンで日付を整形できます。ISO 8601、RFC 2822、HTTP、Unix 形式の表示や、独自形式の日付文字列の解析にも対応。
ISO 8601(2026-03-10T14:30:00+07:00)、RFC 2822、Unix 秒・ミリ秒、一般的な日付表記のほとんどに対応します。
オフセットのない入力の解釈と、下のすべての出力に使われます。
特殊な入力を読むための Moment トークン(例:DD/MM/YYYY HH:mm)。月名は英語で指定してください。
日付フォーマッターとは?
ほとんどの一般的な表記(ISO 8601、RFC 2822、Unix の秒・ミリ秒、独自パターン)の日付を読み取り、選んだタイムゾーンで、独自パターンと標準的な形式の一式として出力します。
日付フォーマッターの使い方
- 書式化する日時に日付を入力するか、現在をクリックします。下の行に、どのように解釈されたかが表示されます。
- オフセットのない入力と、すべての出力に使うタイムゾーンを選びます。
- 入力が変わった形式の場合は、入力パターン(任意)に DD/MM/YYYY HH:mm のように書式を指定します。
- 出力パターンを入力し、トークンの書式(Moment.js、strftime、LDML)と月名・曜日名の言語を選びます。
- 整形結果や、表にある標準形式のいずれかをコピーします。
例
2026-03-10T07:30:05Z, zone Asia/Ho_Chi_Minh, pattern YYYY-MM-DD HH:mm:ss
2026-03-10 14:30:05 – ISO 8601: 2026-03-10T14:30:05+07:00 – RFC 2822: Tue, 10 Mar 2026 14:30:05 +0700 – Unix: 1773127805
日付フォーマッターを使うべき場面
コード用の書式文字列の作成やテスト、API 間での日付の変換、見慣れないタイムスタンプの理解に使えます。すべてのライブラリの特殊なトークンに対応しているわけではないため、対応範囲はツール内のトークン一覧で確認してください。
日付フォーマッターの仕組み
入力は明示的なルールで解析されます。数字のみの値は Unix タイムスタンプ(11桁までは秒、12〜14桁はミリ秒)、次に ISO 8601/RFC 3339、次に RFC 2822、最後にブラウザ自身のパーサーの順です。オフセットのない値は選択したゾーンに置かれ、夏時間による欠落や重複も処理されます。整形では、YYYY、%Y、yyyy などのトークンを、そのゾーンで Intl.DateTimeFormat から得たフィールドに置き換えます。月名と曜日名は、選んだ言語の Intl から取得します。
一般的な使用例
- strftime や Moment の書式文字列を書いて出力を確認する
- ISO タイムスタンプをメールの RFC 2822 形式の日付に変換する
- ログの Unix タイムスタンプを特定のタイムゾーンで読む
- 10/03/2026 のような日が先の日付を ISO 8601 に解析する
よくある質問
Moment、strftime、LDML のトークンの違いは何ですか?
同じ考え方の3つの一般的な表記です。Moment/Day.js は YYYY-MM-DD、strftime(C、Python、PHP、Ruby)は %Y-%m-%d、Unicode LDML(date-fns、Java、Swift)は yyyy-MM-dd を使います。LDML では小文字の dd が日、大文字の DD が年間通算日になる点に注意してください。
タイムゾーンのない日付はどう解釈されますか?
ツールで選択したタイムゾーンで解釈されます。Z や +07:00 のようなオフセットのある日付は正確な時点を表し、選択したゾーンで表示されるだけです。
ツールは秒とミリ秒をどう見分けますか?
桁数で判断します。11桁までは秒、12〜14桁はミリ秒、15〜17桁はマイクロ秒です。
月名が英語でないのはなぜですか?
名称は、初期設定ではページの言語に従います。多くのコードが想定する C/POSIX 形式の出力にするには、月名・曜日名の言語を英語に切り替えてください。