convert / time

タイムゾーン変換

日時とタイムゾーンを入力すると、UTC・JST・CST・IST・CET・EST・PST・AESTの8タイムゾーンへの変換結果を一覧表示します。ブラウザ標準の Intl.DateTimeFormat のみで動作します。

UTCUTC2023-12-31 15:00:00
JSTJST(日本)2024-01-01 00:00:00
CSTCST(中国)2023-12-31 23:00:00
ISTIST(インド)2023-12-31 20:30:00
CETCET(中欧)2023-12-31 16:00:00
ESTEST(米東部)2023-12-31 10:00:00
PSTPST(米西部)2023-12-31 07:00:00
AESTAEST(豪州)2024-01-01 02:00:00

使い方

01
  1. 「日付」欄に yyyy-mm-dd 形式で日付を入力します
  2. 「時刻」欄に HH:MM:SS 形式で時刻を入力します
  3. 「元タイムゾーン」でその日時のタイムゾーンを選択します
  4. 入力に応じて8タイムゾーンの対応時刻が自動更新されます。各行の「copy」ボタンでクリップボードにコピーできます
  5. 「現在時刻」ボタンを押すと、選択中のタイムゾーンでの現在時刻が自動入力されます

実装コード

02

Unix ミリ秒を基準に Intl.DateTimeFormattimeZone オプションで各タイムゾーンへ変換します。IANA タイムゾーン名(Asia/Tokyo など)を渡すだけで、外部ライブラリなしに変換できます。

export function convertAllTimezones(unixMs: number): ConvertedTime[] {
  const date = new Date(unixMs)
  return TIMEZONES.map(tz => ({
    id:        tz.id,
    label:     tz.label,
    offset:    tz.offset,
    formatted: new Intl.DateTimeFormat('ja-JP', {
      timeZone: tz.tz,
      year: 'numeric', month: '2-digit', day: '2-digit',
      hour: '2-digit', minute: '2-digit', second: '2-digit',
      hour12: false,
    }).format(date),
  }))
}

よくある使用例・注意点

03
夏時間(DST)について
米国・欧州などは夏時間を採用しており、年によって UTC からのオフセットが変わります。このツールでは代表的な標準時オフセットを使用しています。正確な夏時間を考慮した変換が必要な場合は、IANA タイムゾーン名を直接使用するサーバーサイド処理をご検討ください。
Intl.DateTimeFormat の活用
ブラウザ標準 API の Intl.DateTimeFormat にタイムゾーン名(IANA tz データベース形式)を渡すことで、外部ライブラリなしに変換できます。Chrome/Edge 80+、Firefox 78+、Safari 14+ で動作します。
対応タイムゾーン
UTC, JST(日本), CST(中国), IST(インド), CET(中欧), EST(米東部), PST(米西部), AEST(豪州)の8タイムゾーンに対応しています。入力元のタイムゾーンを選択して変換すると、選択中の行がハイライト表示されます。

関連ツール

04
Unix時間変換日時差分計算cron式パーサー西暦・和暦変換年間通算日計算

ソースコード

05

このツールのソースコード(テストコードを含む)はGitHubで公開しています。MITライセンスで自由に利用・改変できます。

GitHub でコードを見る →