Mapas JavaScript
Um Map contém pares de chave-valor em que as chaves podem ser de qualquer tipo de dados.
Um mapa lembra a ordem de inserção original das chaves.
Métodos de Mapas Essenciais
Método | Descrição |
---|---|
novo Mapa() | Cria um novo mapa |
definir() | Define o valor de uma chave em um mapa |
pegue() | Obtém o valor de uma chave em um mapa |
excluir() | Remove um elemento Map especificado pela chave |
tem() | Retorna verdadeiro se existir uma chave em um mapa |
para cada() | Chama uma função para cada par chave/valor em um mapa |
entradas() | Retorna um iterador com os pares [chave, valor] em um mapa |
Propriedade | Descrição |
Tamanho | Retorna o número de elementos em um mapa |
Como criar um mapa
Você pode criar um mapa JavaScript por:
- Passando um array para
new Map()
- Crie um mapa e use
Map.set()
O novo método Map()
Você pode criar um Map passando um Array para o new Map()
construtor:
Exemplo
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
O método set()
Você pode adicionar elementos a um Map com o set()
método:
Exemplo
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
O set()
método também pode ser usado para alterar os valores de Mapa existentes:
Exemplo
fruits.set("apples", 200);
O método get()
O get()
método obtém o valor de uma chave em um Map:
Exemplo
fruits.get("apples"); // Returns 500
A propriedade tamanho
A size
propriedade retorna o número de elementos em um Map:
Exemplo
fruits.size;
O método delete()
O delete()
método remove um elemento Map:
Exemplo
fruits.delete("apples");
O método has()
O has()
método retorna true se existir uma chave em um Map:
Exemplo
fruits.has("apples");
Tente isto:
fruits.delete("apples");
fruits.has("apples");
Objetos JavaScript vs Mapas
Diferenças entre objetos JavaScript e mapas:
Objeto | Mapa | |
---|---|---|
Iterável | Não diretamente iterável | Diretamente iterável |
Tamanho | Não tem uma propriedade de tamanho | Tenha uma propriedade de tamanho |
Tipos de chave | As chaves devem ser Strings (ou Símbolos) | As chaves podem ser qualquer tipo de dados |
Pedido de chave | As chaves não estão bem ordenadas | As chaves são ordenadas por inserção |
Padrões | Tem chaves padrão | Não tem chaves padrão |
O método forEach()
O forEach()
método chama uma função para cada par chave/valor em um Map:
Exemplo
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
O método entradas()
O entries()
método retorna um objeto iterador com a [chave, valores] em um Mapa:
Exemplo
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
Suporte ao navegador
Mapas JavaScript são suportados em todos os navegadores, exceto Internet Explorer:
Chrome | Edge | Firefox | Safari | Opera |