Atualizado: 21/06/2025

Este conteúdo é original e não foi gerado por inteligência artificial.

Map em JavaScript

O objeto Map ou dicionário representa uma estrutura de dados onde cada elemento tem uma chave e um valor. As chaves dentro do dicionário são únicas, ou seja, uma chave pode estar associada a apenas um elemento. Para criar um dicionário, utiliza-se o construtor do objeto Map:

const myMap = new Map();

Também é possível inicializar o dicionário com valores iniciais. Para isso, passa-se um array para o construtor, onde cada elemento do array representa um par chave-valor:

const myMap = new Map([
  [1, "a"],
  [2, "b"],
  [3, "c"],
]);
console.log(myMap); // Map(3) {1 => "a", 2 => "b", 3 => "c"}

Neste caso, os números 1, 2 e 3 são as chaves, enquanto as strings "a", "b" e "c" são os valores.

As chaves e os valores não precisam ser do mesmo tipo. O tipo das chaves e dos valores pode variar:

const myMap = new Map([
  [1, "a"],
  ["b", true],
  [false, 3],
]);
console.log(myMap); // Map(3) {1 => "a", "b" => true, false => 3}

Tamanho do dicionário

Com a propriedade size, pode-se verificar a quantidade de elementos em um Map:

const myMap = new Map([
  [1, "a"],
  [2, "b"],
  [3, "c"],
]);
console.log(myMap.size); // 3

Adicionando e Modificando Elementos

Para adicionar ou modificar elementos, utiliza-se o método set(): se a chave já existe, o valor é atualizado; caso contrário, um novo par chave-valor é adicionado:

const myMap = new Map([
  [1, "a"],
  [2, "b"],
  [3, "c"],
]);
myMap.set(1, "d"); // atualiza o valor da chave 1
myMap.set(4, "e"); // adiciona um novo par chave-valor
console.log(myMap); // Map(4) {1 => "d", 2 => "b", 3 => "c", 4 => "e"}

Obtendo valores

Para obter um valor a partir de uma chave, utiliza-se o método get():

const myMap = new Map([
  ["red", "vermelho"],
  ["blue", "azul"],
  ["green", "verde"],
]);
console.log(myMap.get("red")); // vermelho
console.log(dict.get("violet")); // undefined

Para evitar o retorno de undefined, pode-se verificar a existência de um elemento pela chave com o método has():

const myMap = new Map([
  ["red", "vermelho"],
  ["blue", "azul"],
  ["green", "verde"],
]);
console.log(myMap.has("red")); // true
console.log(myMap.has("violet")); // false

if (dict.has("red")) console.log(dict.get("red"));

Removendo Elementos

Para remover um elemento a partir de uma chave, utiliza-se o método delete():

const myMap = new Map([
  ["red", "vermelho"],
  ["blue", "azul"],
  ["green", "verde"],
]);
myMap.delete("red");
console.log(myMap); // Map(2) {"blue" => "azul", "green" => "verde"}

Para remover todos os elementos, utiliza-se o método clear():

const myMap = new Map([
  ["red", "vermelho"],
  ["blue", "azul"],
  ["green", "verde"],
]);
myMap.clear();
console.log(myMap); // Map(0) {}

Percorrendo Elementos

Para percorrer os elementos de um dicionário, pode-se utilizar o método forEach():

const myMap = new Map([
  ["red", "vermelho"],
  ["blue", "azul"],
  ["green", "verde"],
]);
myMap.forEach((value, key) => console.log(key, ":", value));

Outra forma de percorrer os elementos é utilizando o loop for...of:

const myMap = new Map([
  ["red", "vermelho"],
  ["blue", "azul"],
  ["green", "verde"],
]);
for (const [key, value] of myMap) {
  console.log(key, ":", value);
}

Saída no console:

red : vermelho
blue : azul
green : verde
Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com