--- title: Symbol slug: Glossary/Symbol tags: - ECMAScript 2015 - Glossary - JavaScript - Sharing translation_of: Glossary/Symbol ---
Un símbol és un tipus de dades primitiu les instàncies de les quals són úniques i immutables. En alguns llenguatges de programació són també nomenats atoms.
En {{Glossary("JavaScript")}}, Symbol és un dels {{Glossary("Primitive", "valors primitius")}} i el objecte {{jsxref("Symbol")}} és un {{Glossary("Wrapper","contenidor")}} al voltant d'un Symbol primitiu.
Symbol pot tenir una descripció opcional, però per finalitats de depuració.
El tipus Symbol és una nova característica de ECMAScript 2015 i no hi ha equivalent en ECMAScript 5 de Symbol.
Symbol("foo") !== Symbol("foo") const foo = Symbol() const bar = Symbol() typeof foo === "symbol" typeof bar === "symbol" let obj = {} obj[foo] = "foo" obj[bar] = "bar" JSON.stringify(obj) // {} Object.keys(obj) // [] Object.getOwnPropertyNames(obj) // [] Object.getOwnPropertySymbols(obj) // [ foo, bar ]