performance.now()を使ってJavaScriptで高精度なタイムスタンプを取得する
JavaScriptでタイムスタンプを取得する方法
Dateオブジェクトを使用する
最も簡単な方法は、Dateオブジェクトを使用する方法です。Dateオブジェクトは、現在の日時を表すオブジェクトです。
const timestamp = new Date().getTime();
console.log(timestamp); // 1649043600000
上記のコードは、現在の日時を取得し、ミリ秒単位でタイムスタンプを出力します。
Dateオブジェクトには、さまざまなプロパティやメソッドがあります。これらのプロパティやメソッドを使用して、特定の日時のタイムスタンプを取得することもできます。
例えば、以下のコードは、2024年4月4日午前9時0分0秒のタイムスタンプを取得します。
const timestamp = new Date(2024, 3, 4, 9, 0, 0).getTime();
console.log(timestamp); // 1649014800000
Date.now()
は、現在の日時をミリ秒単位で取得する関数です。
const timestamp = Date.now();
console.log(timestamp); // 1649043600000
Date.now()
は、Dateオブジェクトよりも簡潔にコードを書けるので、よく使用されます。
他のライブラリを使用する
Moment.jsなどのライブラリを使用すると、より簡単にタイムスタンプを扱うことができます。
moment().format("YYYY-MM-DD HH:mm:ss"); // "2024-04-04 09:00:00"
Moment.jsは、タイムスタンプのフォーマット変換や、日付の計算など、さまざまな機能を提供しています。
JavaScriptでタイムスタンプを取得するには、さまざまな方法があります。それぞれの方法の特徴を理解して、目的に合った方法を選択してください。
現在の日時を取得する
// 現在の日時を取得
const now = new Date();
// 現在の日時を文字列に変換
const nowStr = now.toLocaleString();
// 出力
console.log(nowStr); // "2024年4月4日 21時21分22秒"
特定の日時のタイムスタンプを取得する
// 2024年4月4日午前9時0分0秒のタイムスタンプを取得
const timestamp = new Date(2024, 3, 4, 9, 0, 0).getTime();
// 出力
console.log(timestamp); // 1649014800000
タイムスタンプを日付に変換する
// タイムスタンプを取得
const timestamp = Date.now();
// タイムスタンプをDateオブジェクトに変換
const date = new Date(timestamp);
// Dateオブジェクトを文字列に変換
const dateStr = date.toLocaleString();
// 出力
console.log(dateStr); // "2024年4月4日 21時21分22秒"
Moment.jsを使用する
// Moment.jsをインストール
// npm install moment
// Moment.jsを使用して現在の日時を取得
const now = moment();
// 現在の日時をフォーマット変換
const nowStr = now.format("YYYY-MM-DD HH:mm:ss");
// 出力
console.log(nowStr); // "2024-04-04 09:21:22"
JavaScriptでタイムスタンプを取得するその他の方法
performance.now()
は、ブラウザが起動してからの経過時間をミリ秒単位で取得する関数です。
const timestamp = performance.now();
console.log(timestamp); // 12345.678
performance.now()
は、Dateオブジェクトよりも高精度なタイムスタンプを取得できます。
UNIXタイムスタンプは、1970年1月1日午前0時0分0秒からの経過時間を秒単位で表した数値です。
const timestamp = Math.floor(Date.now() / 1000);
console.log(timestamp); // 1649043600
UNIXタイムスタンプは、異なるシステム間でタイムスタンプを共有する際に便利です。
外部ライブラリを使用する
JavaScriptには、タイムスタンプを扱うための外部ライブラリが多数存在します。
javascript datetime timestamp