coderef

SymbolBaseline · Widely available

A Symbol value is a unique, non-enumerable primitive value used for encapsulation or information hiding. For example, a symbol can be a key of an object that can never collide with any other key.

Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Sep 30, 2015. Widely available since Mar 30, 2018.

Browser support

DesktopChrome
1–37Not supported
38+Supportedsince Oct 7, 2014
Current: 155
Edge
12+Supportedsince Jul 29, 2015
Current: 154
Firefox
1–35Not supported
36+Supportedsince Feb 24, 2015
Current: 157
Safari
1–8Not supported
9+Supportedsince Sep 30, 2015
Current: 27
MobileChrome Android
18–37Not supported
38+Supportedsince Oct 8, 2014
Current: 155
Firefox Android
4–35Not supported
36+Supportedsince Feb 27, 2015
Current: 157
Safari iOS
1–8Not supported
9+Supportedsince Sep 16, 2015
Current: 27

How to use

This feature is Baseline widely available — use it freely, no fallback needed.

Example

Full syntax and examples are on MDN: Symbol.species.

Feature detection

JS · check before using
if (typeof Symbol !== "undefined") {
  // Symbol is available
}

Sub-features

Support for each part of the feature (21). The overall table above shows when the whole feature works.

Sub-featureChromeEdgeFirefoxSafariChrome AndroidFirefox AndroidSafari iOS
Array.@@species51794810514810
Symbol381236938369
Symbol.@@toPrimitive47154410474410
Symbol.Symbol381236938369
Symbol.description70796312.1706312.2
Symbol.for401236940369
Symbol.hasInstance50155010505010
Symbol.isConcatSpreadable48154810484810
Symbol.iterator43123610433610
Symbol.keyFor401236940369
Symbol.match50794010504010
Symbol.matchAll73796713736713
Symbol.replace50794910504910
Symbol.search50794910504910
Symbol.species51134110514110
Symbol.split50794910504910
Symbol.toPrimitive47154410474410
Symbol.toString381236938369
Symbol.toStringTag49155110495110
Symbol.toStringTag.dom_objects50797814507914
Show 1 more
Sub-featureChromeEdgeFirefoxSafariChrome AndroidFirefox AndroidSafari iOS
Symbol.valueOf381236938369