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)"

仕様書

ブラウザーの互換性

BCD tables only load in the browser

関連情報