Fundamentos de Map e Set
Use Map para consultas de chave→valor e Set para valores únicos; percorra, converta e aplique pequenos padrões
Fundamentos de Map e Set é uma aula grátis de JavaScript Academy no CoddyKit. Esta é a aula 1 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de JavaScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de JavaScript Academy inclui 3 aulas no total.
Por que usar Mapa e Conjunto?
Objetivo: Escolher o contêiner adequado.
- Mapa: chave→valor (qualquer tipo de chave)
- Conjunto: valores exclusivos
- Iterar e converter
- Pequenos padrões do dia a dia

Mapa: set/get/has
Mapa oferece set, get, has, delete, limpar e uma propriedade de tamanho.
// Map: key→value with any key type
const userToScore = new Map();
// set values
userToScore.set("ayla", 10);
userToScore.set("mina", 15);
// read values
console.log("ayla:", userToScore.get("ayla"));
console.log("has lena?", userToScore.has("lena"));
// size
console.log("size:", userToScore.size);

Conjunto: valores exclusivos
Conjunto mantém apenas uma cópia de cada valor; as duplicatas são ignoradas.
// Set: unique values
const seen = new Set();
// add values (duplicates are ignored)
seen.add("red");
seen.add("blue");
seen.add("red"); // ignored
console.log("size:", seen.size);
console.log("has red?", seen.has("red"));
seen.delete("blue");
console.log("after delete:", seen.size);

Por que usar Mapa em vez de objeto
Mapa preserva a identidade dos objetos como chaves. Objetos simples convertem as chaves em strings.
// Map can use objects as keys directly
const key1 = { id: 1 };
const key2 = { id: 1 }; // different reference
const map = new Map();
map.set(key1, "A");
console.log("get key1:", map.get(key1));
console.log("get key2:", map.get(key2)); // undefined (different object)
const obj = {};
obj[key1] = "B"; // coerces key to "[object Object]"
console.log("object key:", obj["[object Object]"]);

Conversões
Crie arrays exclusivos a partir de um Conjunto. Crie um Mapa a partir de pairs e faça o caminho inverso com entries().
// Unique array values via Set
const nums = [2, 2, 3, 4, 3];
const unique = Array.from(new Set(nums));
console.log("unique:", unique);
// Map from pairs; back to pairs
const pairs = [["a", 1], ["b", 2]];
const m = new Map(pairs);
console.log("get a:", m.get("a"));
console.log("entries:", Array.from(m.entries()));

Padrões para lembrar
Pequenos padrões:
- Use um Mapa para contagens (chave → número).
- Use um Conjunto para verificações rápidas de pertencimento.
- Prefira um Mapa quando as chaves não forem strings ou quando precisar preservar a ordem de inserção.

Questionário sobre exclusividade de conjuntos
Verificação rápida: Exclusividade.

Recapitulação
Recapitulação: Escolha um Mapa para consultas de chave→valor (qualquer tipo de chave) e um Conjunto para valores exclusivos; itere e converta com entries()/Array.from.

Perguntas Frequentes
A aula “Fundamentos de Map e Set” é grátis?
Sim — o texto completo de “Fundamentos de Map e Set” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de JavaScript Academy, atualize para CoddyKit PRO. O curso de JavaScript Academy inclui 3 aulas no total.
O que vou aprender em “Fundamentos de Map e Set”?
Use Map para consultas de chave→valor e Set para valores únicos; percorra, converta e aplique pequenos padrões Você pratica JavaScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar JavaScript Academy?
Nenhuma experiência prévia é necessária. JavaScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 3.
Quanto tempo leva a aula “Fundamentos de Map e Set”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de JavaScript Academy?
Sim. Cada aula de JavaScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Fundamentos de Map e Set
- WeakMap e WeakSet — privacidade e caches simples
- Padrões de iteração