Compreendendo mapas e conjuntos em JavaScript
As estruturas de dados são a espinha dorsal de qualquer linguagem de programação. Os exemplos incluem a lista vinculada, árvores, pilhas, filas e gráficos. Neste artigo, você aprenderá como usar o mapa e definir estruturas de dados em JavaScript.
Em 2015, o JavaScript introduziu o ES6 para fornecer aos desenvolvedores uma experiência de codificação aprimorada. ES6 introduziu mapas e conjuntos para que os desenvolvedores não precisem construí-los usando tipos de dados primitivos. Vamos examiná-los com mais detalhes.
Noções básicas sobre mapas em JavaScript
O mapa é um tipo de estrutura de dados que armazena pares de valores-chave. É um dos métodos mais eficientes para pesquisar e recuperar dados. Você pode armazenar todos os tipos de dados em mapas JavaScript.
Vamos dar uma olhada em alguns métodos que você pode executar em mapas JavaScript.
1. definir ()
Você pode inserir um par de valores-chave em um mapa usando o método set () . Este método leva dois argumentos: a chave e o valor.
Confira o código abaixo que mostra como inserir em um mapa.
let map = new Map();
map.set("fruit1", "Grapes");
map.set("fruit2", "Mango");
map.set("fruit3", "Strawberry");
map.set("fruit4", "Mango");
console.log(map)
A saída após imprimir o mapa:
Map {
'fruit1' => 'Grapes',
'fruit2' => 'Mango',
'fruit3' => 'Strawberry',
'fruit4' => 'Mango' }
2. delete ()
Para excluir um elemento de um mapa, use o método delete () . Este método aceita um argumento: a chave dos dados que você deseja excluir. Se a chave existir, este método remove essa entrada do mapa e retorna verdadeiro. Caso contrário, retorna falso.
console.log("Is the fruit1 deleted", map.delete("fruit1"));
console.log(map)
A saída após a exclusão da fruta1 :
Is the fruit1 deleted true
Map {
'fruit2' => 'Mango',
'fruit3' => 'Strawberry',
'fruit4' => 'Mango' }
3. get ()
O método get () recupera o valor da chave especificada. Como o método delete () , ele aceita um argumento: a chave.
console.log(map.get("fruit2"))
Produz a seguinte saída:
Mango
4. tamanho ()
O método size () retorna o número de pares de valores-chave presentes no mapa.
let map = new Map();
map.set("fruit1", "Grapes");
map.set("fruit2", "Mango");
map.set("fruit3", "Strawberry");
map.set("fruit4", "Mango");
console.log("The size of the map is", map.size)
Dá o seguinte resultado:
The size of the map is 4
5. limpar ()
Para excluir todos os elementos do mapa, use o método clear () .
map.clear()
console.log(map)
A saída do mapa após a exclusão de todos os itens:
Map {}
6. tem ()
O método has () ajuda a verificar se a chave existe em um mapa ou não. Ele retorna um valor booleano dependendo da existência de um item no mapa. Este método aceita um argumento: a chave a ser pesquisada.
console.log("The grapes exists:", map.has("fruit1"))
Produz a seguinte saída com nosso mapa de exemplo:
The grapes exists: true
7. chaves ()
O método keys () retorna um iterador com todas as chaves nele. Você pode percorrê-los para obter acesso a uma chave individual.
const keys = map.keys();
for (let k of keys) {
console.log(k);
}
A saída do código acima é:
fruit1
fruit2
fruit3
fruit4
8. valores
O método values () retorna um iterador com todos os valores nele.
const values = map.values();
for (let v of values) {
console.log(v);
}
A saída do código acima é:
Grapes
Mango
Strawberry
Mango
Noções básicas sobre conjuntos em JavaScript
A estrutura de dados definida possui valores únicos, o que significa que nenhum valor pode se repetir. Você pode armazenar todos os tipos de valores em um conjunto, incluindo primitivos e objetos.
Vamos dar uma olhada em alguns métodos do conjunto:
1. adicionar ()
O método add () ajuda você a adicionar dados ao conjunto. Se você tentar adicionar dados duplicados, o conjunto simplesmente os ignorará.
let s = new Set();
s.add(1);
s.add(2);
s.add(3);
s.add(4);
s.add(4);
console.log(s);
Dá o resultado:
Set { 1, 2, 3, 4 }
2. delete ()
O método delete () exclui o valor especificado do conjunto.
s.delete(3);
console.log(s);
A saída após a exclusão de 3:
Set { 1, 2, 4 }
3. tem ()
O método has () ajuda a verificar se um valor existe ou não no conjunto.
console.log(s.has(1))
A saída do código acima é verdadeira .
4. limpar ()
O método clear () ajuda a excluir todos os itens do conjunto.
s.clear();
console.log(s);
A saída após a exclusão de todos os itens do conjunto:
Set {}
Saiba mais sobre ES6
Agora que você aprendeu como usar mapas e conjuntos em JavaScript, é hora de implementá-los em seus projetos. Você pode usá-los enquanto resolve problemas de algoritmo e estrutura de dados. Você pode usar um mapa para implementar um algoritmo de hash.
Quer saber mais sobre o ES6? Confira o artigo abaixo que lhe contará tudo sobre isso.