Symbol
JavaScript
Identificador único e imutável, útil para chaves de propriedade.
seção
Explicação
Symbol — Identificador único e imutável, útil para chaves de propriedade.
Cada Symbol() é único e imutável. Symbol.for("key") registra globalmente; Symbol.iterator define protocolo de iteração.
Evita colisão de chaves em objetos meta (frameworks usam symbols para marcar elementos React, etc.).
seção
Exemplo
const id = Symbol('id');const obj = { [id]: 42 };Object.keys(obj) // [] — symbol não é enumerable por padrãoseção
Modo de uso
Chaves privadas "soft" em objetos públicos
Well-known symbols (
Symbol.toStringTag)Definir iteradores customizados
seção
Armadilhas comuns
Esperar ver symbol em
JSON.stringifyRecriar symbol a cada render quebra identidade
seção
Termos relacionados
Aprofundar no artigo
Quer ir além? Este artigo explora o tema em profundidade — leitura recomendada após o glossário.
Primitive Types: Os 7 Blocos de Construção do JavaScript
Os 7 tipos primitivos do JavaScript — imutabilidade, typeof, autoboxing e os quirks que todo desenvolvedor precisa conhecer.
ler artigoMais em JavaScript
Outros termos da mesma categoria para revisão em sequência.
typeof
JSOperador unário que retorna string indicando o tipo do operando.
ver definiçãoAutoboxing
JSEnvolvimento temporário de primitivo em objeto wrapper para chamar métodos.
ver definiçãoImutabilidade
JSPropriedade de primitivos: o valor não muda; operações criam novos valores.
também: imutável
ver definição