此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Symbol.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年9月⁩.

Symbol 值的 valueOf() 方法会返回该符号(symbol)的值。

尝试一下

const symbol1 = Symbol("foo");

console.log(typeof Object(symbol1));
// Expected output: "object"

console.log(typeof Object(symbol1).valueOf());
// Expected output: "symbol"

语法

js
valueOf()

参数

无。

返回值

指定的 Symbol 对象的原始值。

描述

SymbolvalueOf() 方法会以 Symbol 数据类型返回 Symbol 对象的原始值。

JavaScript 调用 valueOf() 方法会将对象转换为原始值。你很少需要自己调用 valueOf() 方法;当遇到期望原始值的对象时,JavaScript 会自动调用它。

示例

使用 valueOf()

js
const sym = Symbol("example");
sym === sym.valueOf(); // true

规范

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

浏览器兼容性

参见