Unix timestampの仕組みをわかりやすく解説
Unix timestampは1970年1月1日UTCからの経過秒数です。その意味、システムが使う理由、timestampと日付を相互変換する方法を数秒で理解しましょう。
Unix timestampは、Unix epoch(1970年1月1日のUTC深夜0時)から経過した秒数です。システム時刻の共通語であり、データベース、ログ、API、cronジョブはどれもこれで話します。しかし 1726617600 を日付として読むには、頭の計算ではなくツールが必要です。timestamp変換ツールを開けば、双方向で読み取ってくれます。
TL;DR
Unix timestampは、タイムゾーンに依存しない、ある瞬間を指す単一の整数です。
- 1970年1月1日UTCからの秒数 — epochです。数字1つで瞬間が1つ。AM/PMや夏時間で論争することはありません。
- 双方向に変換 — timestampを読みやすい日付に、あるいは日付をtimestampに、ブラウザの中で直接変換できます。
- アップロードなし — 変換はローカルで実行されるので、timestampの値がデバイスから外に出ることはありません。
Unix timestampとは何か
Unix epochは 1970-01-01 00:00:00 UTC です。Unix timestampとは、単にその瞬間から何秒経過したかを数えたものです。値 0 はepochそのもので、1700000000 は2023年11月中旬のある瞬間です。1秒過ぎるごとに、数字は1ずつ大きくなります。
システムがこれに頼るのは、3つの問題を一度に解決するからです。
- 曖昧さがない。
07/09/26は米国では7月9日、ヨーロッパの多くでは9月7日を意味します。timestampはどこでもただ1つの意味しか持ちません。 - タイムゾーンフリー。 世界時計上の1つの瞬間を指します。誰もが、どこにいても、自分のオフセットを適用して時計の時刻を読み取ります。
- ソート・比較しやすい。 数字が大きいほど後の瞬間なので、ソートは単なる数値順になります。日付のパースは不要です。
この最後の性質こそ、ログ、キャッシュキー、データベースの created_at カラムが、書式付き文字列ではなく整数を保存することが多い理由です。
秒、ミリ秒、そしてそれ以上
古典的なUnix timestampは秒を数えます。Unixの date +%s コマンドは秒を返します。しかしJavaScript — つまりすべてのブラウザ、Nodeサービス、Date.now() 呼び出し — はミリ秒を数えます。同じ瞬間がそれぞれ違って見えます。
- 秒:
1700000000 - ミリ秒:
1700000000000(末尾に3桁多い)
混同すると、1970年や紀元5万年の日付が出てきます。timestamp変換ツールは両方にも、さらにそれ以上にも対応します。単位セレクタは自動、秒、ミリ秒、マイクロ秒、ナノ秒をカバーします。自動モードでは桁数から単位を推測します — 10桁は秒、13桁はミリ秒、16桁はマイクロ秒、19桁はナノ秒 — だからめったに自分で選ぶ必要はありません。明示的に単位を選んだ場合は、その選択が優先されます。
手順:timestampを変換する
- 方向を選ぶ。 変換モードで、timestampから日時(数値 → 読みやすい日付)か日時からtimestamp(読みやすい日付 → 数値)を選びます。
- 値を入力する。 timestampから日時では数値のtimestampを入力します。日時からtimestampでは、日時フィールドで瞬間を選びます。
- 単位を選ぶ。 timestamp単位リストで自動、秒、ミリ秒、マイクロ秒、ナノ秒を選びます。意図的に制御しないなら自動で十分です。
- タイムゾーンを選ぶ。 タイムゾーンリストは9つの主要ゾーン(次のセクション参照)を提供し、読みやすい結果が期待する時計の時刻を反映するようにします。
- 変換を押す。 変換結果パネルにUnix秒、Unixミリ秒、ISO UTC、RFC 2822、UTC、ローカル、選択したゾーン、相対オフセットが表示されます — すべてコピーを1回クリックすれば全部取得できます。
現在の瞬間が必要ですか?上部の帯が毎秒更新され、現在の秒・ミリ秒・ISO値を示します。現在アクションがその値を入力欄に取り込みます。
タイムゾーンと9つのゾーンリスト
timestamp自体はタイムゾーンを持ちません — それは世界時計上の1つの瞬間です。タイムゾーンが関わるのは、それを時計の日付として描画するときだけです。このツールは9つの固定ゾーンリストを提供します:UTC、ローカル、America/New_York、Europe/London、Europe/Berlin、Asia/Tokyo、Asia/Seoul、Asia/Singapore、Australia/Sydneyです。これらで主要地域を一通りカバーしており、多くの開発者が実際に予定を組む範囲です。
これはフリー入力のIANAゾーンピッカーではありません。あなたの都市がリストにない場合は、ローカル(ブラウザ自身のゾーンを使います)かUTCを選び、そこから自分で変換してください。選択したゾーンは結果の「選択タイムゾーン」行を制御します。UTCとローカルの行は常に表示されるので、常に曖昧さのない参照点があります。
制限と正直な注意点
結果に依存する前に知っておくべき制約がいくつかあります。
- 9つの固定ゾーン、フリー入力なし。
America/Sao_PauloやAsia/Kolkataは入力できません。ローカルかUTCを使い、自分でオフセットを適用してください。 - 日付範囲に上限がある。
8,640,000,000,000,000ミリ秒(およそ275760年)を超える値は、ブラウザの安全範囲外であり、「安全でない範囲」エラーを返します。これはJavaScriptのDateの上限で、ツール固有の制限ではありません。 - 相対オフセットは概算値。 相対の数値は瞬間から導出され、素早い確認用であり、打ち上げの正確なカウントダウンではありません。
よくある質問
Unix timestampは秒ですか、それともミリ秒ですか?
出処によります。古典的なUnix timestampは秒です(date +%s)。JavaScriptの Date.now() はミリ秒を返します。違いは末尾のゼロ3つです。値を貼り付けて1970年や何千年も先の日付が出たら、単位を取り違えています — timestamp単位セレクタを切り替えるか、自動に桁数で判定させてください。
Unix timestampはどのタイムゾーンですか?
実質的にUTCです。timestampは世界時計上の1つの瞬間を指すので、ローカルのオフセットは組み込まれていません。読みやすい日付として読むとき、適用するタイムゾーンが時計の時刻を生み出します。ツールは常にUTC行を表示して曖昧さのない参照を示し、さらにローカルと選択したゾーンを加えます。
自分のローカルタイムゾーンに変換できますか?
できます、それがリストの9つのゾーンのいずれかであれば。ブラウザの現在のタイムゾーンを使うにはローカルを選ぶか、リストから特定のゾーンを選びます。あなたのゾーンが9つの選択肢にない場合、フリー入力はありません — ローカルかUTCを使い、そこからオフセットを適用してください。
epochとは何ですか?
epochは固定の参照点 1970-01-01 00:00:00 UTC です。Unix timestampは、その瞬間からの秒数(あるいはミリ秒、マイクロ秒、ナノ秒)のカウントです。epoch自体がtimestamp 0 で、負のtimestampは1970年より前の日付へ逆算します。

このツールから始める
今すぐ始める