このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Date.prototype.valueOf()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

valueOf()Date インスタンスのメソッドで、この日時の、 1970 年 1 月 1 日午前 0 時 (UTC) を元期として定義し、それからのミリ秒数を返します。

試してみましょう

const date1 = new Date(Date.UTC(96, 1, 2, 3, 4, 5));

console.log(date1.valueOf());
// 予想される結果: 823230245000

const date2 = new Date("02 Feb 1996 03:04:05 GMT");

console.log(date2.valueOf());
// 予想される結果: 823230245000

構文

js
valueOf()

引数

なし。

返値

この日時をミリ秒単位で表したタイムスタンプの数値。日付が無効である場合は NaN を返します。

解説

valueOf() メソッドは、型変換プロトコルの一部です。 Date には [Symbol.toPrimitive]() メソッドがあるため、 Date オブジェクトが暗黙的に文字列へ変換される場合、このメソッドが常に valueOf() よりも優先されます。ただし、 Date.prototype[Symbol.toPrimitive]() は、内部では依然として this.valueOf() を呼び出します。

Date オブジェクトは、 ObjectvalueOf() メソッドを上書きします。 Date.prototype.valueOf() は、日付のタイムスタンプを返します。これは、 Date.prototype.getTime() メソッドと機能的に同等です。

valueOf() の使用

js
const d = new Date(0); // 1970-01-01T00:00:00.000Z
console.log(d.valueOf()); // 0

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-date.prototype.valueof

ブラウザーの互換性

関連情報