--- title: 'Symbol.prototype[@@toPrimitive]' slug: Web/JavaScript/Reference/Global_Objects/Symbol/@@toPrimitive tags: - ECMAScript 2015 - JavaScript - Method - Prototype - Symbol translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/@@toPrimitive ---
[@@toPrimitive]()
メソッドは、 Symbol オブジェクトをプリミティブ値に変換します。
Symbol()[Symbol.toPrimitive](hint)
{{jsxref("Symbol")}} オブジェクトで指定されたプリミティブ値です。
{{jsxref("Symbol")}} オブジェクトの [@@toPrimitive]()
メソッドは、 Symbol オブジェクトのプリミティブ値を Symbol データ型として返します。 hint
引数は使われません。
JavaScript はオブジェクトをプリミティブ値に変換するために [@@toPrimitive]()
メソッドを呼び出します。 [@@toPrimitive]()
メソッドを自分で呼び出す必要はほとんどありません。 JavaScript は、プリミティブ値が期待されているオブジェクトに遭遇したときに、自動的にこれを呼び出します。
const sym = Symbol("example"); sym === sym[Symbol.toPrimitive](); // true
仕様書 |
---|
{{SpecName('ESDraft', '#sec-symbol.prototype-@@toprimitive', 'Symbol.prototype.@@toPrimitive')}} |
{{Compat("javascript.builtins.Symbol.@@toPrimitive")}}