试一试
const date1 = new Date(Date.UTC(96, 1, 2, 3, 4, 5));
console.log(date1.valueOf());
// Expected output: 823230245000
const date2 = new Date("02 Feb 1996 03:04:05 GMT");
console.log(date2.valueOf());
// Expected output: 823230245000
语法
js
valueOf()
参数
无。
返回值
描述
valueOf() 方法是 类型转换协议 的一部分。由于 Date 对象有一个 [Symbol.toPrimitive]() 方法,当 Date 对象被隐式转换为数字 时,该方法始终优先于 valueOf()。但是,Date.prototype[Symbol.toPrimitive]() 在内部仍然会调用 this.valueOf()。
Date 对象重写了 Object 的 valueOf() 方法。Date.prototype.valueOf() 返回日期的时间戳,这在功能上等同于 Date.prototype.getTime() 方法。
示例
使用 valueOf()
js
const d = new Date(0); // 1970-01-01T00:00:00.000Z
console.log(d.valueOf()); // 0
规范
| 规范 |
|---|
| ECMAScript® 2026 语言规范 # sec-date.prototype.valueof |
浏览器兼容性
加载中…