The toString() method returns a string representing the specified Symbol object.

Syntax

Symbol().toString();

Return value

A string representing the specified Symbol object.

Description

The Symbol object overrides the toString method of the Object object; it does not inherit Object.prototype.toString(). For Symbol objects, the toString method returns a string representation of the object.

No string concatenation

While you can call toString() on Symbols, you can't use string concatenation with them:

Symbol('foo') + 'bar';       // TypeError: Can't convert symbol to string

Examples

Symbol('desc').toString();   // "Symbol(desc)"

// well-known symbols
Symbol.iterator.toString();  // "Symbol(Symbol.iterator)

// global symbols
Symbol.for('foo').toString() // "Symbol(foo)"

Specifications

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Symbol.prototype.toString' in that specification.
Standard Initial definition.
ECMAScript Latest Draft (ECMA-262)
The definition of 'Symbol.prototype.toString' in that specification.
Living Standard  

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support381236 No259
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support Yes38 Yes36 No259

See also

Document Tags and Contributors

 Contributors to this page: fscholz, jameshkramer, nmve, kdex, eduardoboucas
 Last updated by: fscholz,