Mappe JavaScript
Una mappa contiene coppie chiave-valore in cui le chiavi possono essere di qualsiasi tipo di dati.
Una mappa ricorda l'ordine di inserimento originale delle chiavi.
Metodi mappa essenziali
Metodo | Descrizione |
---|---|
nuova mappa() | Crea una nuova mappa |
impostato() | Imposta il valore per una chiave in una mappa |
ottenere() | Ottiene il valore di una chiave in una mappa |
eliminare() | Rimuove un elemento Map specificato dalla chiave |
ha() | Restituisce true se esiste una chiave in una mappa |
per ciascuno() | Chiama una funzione per ogni coppia chiave/valore in una mappa |
inserimenti() | Restituisce un iteratore con le coppie [chiave, valore] in una mappa |
Proprietà | Descrizione |
dimensione | Restituisce il numero di elementi in una mappa |
Come creare una mappa
Puoi creare una mappa JavaScript:
- Passare un array a
new Map()
- Crea una mappa e usa
Map.set()
Il nuovo metodo Map()
Puoi creare una mappa passando un Array al new Map()
costruttore:
Esempio
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
Il metodo set()
Puoi aggiungere elementi a una mappa con il set()
metodo:
Esempio
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
Il set()
metodo può essere utilizzato anche per modificare i valori della mappa esistenti:
Esempio
fruits.set("apples", 200);
Il metodo get()
Il get()
metodo ottiene il valore di una chiave in una mappa:
Esempio
fruits.get("apples"); // Returns 500
La dimensione Proprietà
La size
proprietà restituisce il numero di elementi in una mappa:
Esempio
fruits.size;
Il metodo delete()
Il delete()
metodo rimuove un elemento Map:
Esempio
fruits.delete("apples");
Il metodo has()
Il has()
metodo restituisce true se esiste una chiave in una mappa:
Esempio
fruits.has("apples");
Prova questo:
fruits.delete("apples");
fruits.has("apples");
Oggetti JavaScript vs Mappe
Differenze tra oggetti e mappe JavaScript:
Oggetto | Carta geografica | |
---|---|---|
Iterabile | Non direttamente iterabile | Direttamente iterabile |
Misurare | Non hanno una proprietà di dimensioni | Avere una proprietà di dimensioni |
Tipi di chiavi | Le chiavi devono essere stringhe (o simboli) | Le chiavi possono essere qualsiasi tipo di dati |
Ordine chiave | Le chiavi non sono ben ordinate | Le chiavi sono ordinate per inserimento |
Predefiniti | Avere chiavi predefinite | Non hanno chiavi predefinite |
Il metodo forEach()
Il forEach()
metodo chiama una funzione per ogni coppia chiave/valore in una mappa:
Esempio
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
Il metodo entry()
Il entries()
metodo restituisce un oggetto iteratore con la [chiave, valori] in una mappa:
Esempio
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
Supporto del browser
Le mappe JavaScript sono supportate in tutti i browser, ad eccezione di Internet Explorer:
Chrome | Edge | Firefox | Safari | Opera |