Symbol.prototype.toString()

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

Syntax

JavaScript
<var>Symbol().toString()</var>;

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:

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

Examples

JavaScript
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 2017 Draft (ECMA-262)
The definition of 'Symbol.prototype.toString' in that specification.
Draft  

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) 36.0 (36.0) No support No support No support
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) 36.0 (36.0) No support No support No support

See also

License

© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/symbol/tostring

ECMAScript6 JavaScript Method Prototype Symbol