Symbol.prototype.toString()
toString()
メソッドは、指定された Symbol
オブジェクトを表す文字列を返します。
試してみましょう
構文
Symbol().toString()
返値
指定された Symbol
オブジェクトを表す文字列です。
解説
Symbol
オブジェクトは Object
オブジェクトの toString
メソッドをオーバーライドします。 Object.prototype.toString()
を継承していません。 Symbol
オブジェクトでは toString
メソッドはオブジェクトの文字列表現を返します。
文字列への型変換はない
シンボルに対しては toString()
を呼び出すことができるため、文字列への型変換はありません。
Symbol('foo') + 'bar' // TypeError: Can't convert symbol to string
例
toString() の使用
Symbol('desc').toString() // "Symbol(desc)"
// ウェルノウンシンボル
Symbol.iterator.toString() // "Symbol(Symbol.iterator)
// グローバルシンボル
Symbol.for('foo').toString() // "Symbol(foo)"
仕様書
Specification |
---|
ECMAScript Language Specification # sec-symbol.prototype.tostring |
ブラウザーの互換性
BCD tables only load in the browser