Et kort indeholder nøgle-værdi-par, hvor nøglerne kan være en hvilken som helst datatype.
Et kort husker den oprindelige indsættelsesrækkefølge for nøglerne.
Opretter et nyt kort
Indstiller værdien for en nøgle i et kort
Henter værdien for en nøgle i et kort
Fjerner et kortelement angivet af nøglen
Returnerer sand, hvis der findes en nøgle i et kort
Kalder en funktion for hvert nøgle/værdi-par i et kort
Returnerer en iterator med [nøgle, værdi]-parrene i et kort
Returnerer antallet af elementer i et kort
Du kan oprette et JavaScript-kort ved at:
Sender et array til new Map()
Opret et kort og brug Map.set()
new Map()
Du kan oprette et kort ved at videregive et array til new Map()
-konstruktøren:
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Map Objects</h2>
<p>Creating a Map from an Array:</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
document.getElementById("demo").innerHTML = fruits.get("apples");
</script>
</body>
</html>
set()
Du kan tilføje elementer til et kort med metoden set()
:
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Map Objects</h2>
<p>Using Map.set():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map();
// Set Map Values
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
document.getElementById("demo").innerHTML = fruits.get("apples");
</script>
</body>
</html>
Metoden set()
kan også bruges til at ændre eksisterende kortværdier:
fruits.set("apples", 200);
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Map Objects</h2>
<p>Using Map.set():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
fruits.set("apples", 200);
document.getElementById("demo").innerHTML = fruits.get("apples");
</script>
</body>
</html>
get()
Metoden get()
henter værdien af en nøgle i et kort:
fruits.get("apples"); // Returns 500
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Map Objects</h2>
<p>Using Map.get():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
document.getElementById("demo").innerHTML = fruits.get("apples");
</script>
</body>
</html>
size
Egenskaben size
returnerer antallet af elementer i et kort:
fruits.size;
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Maps</h2>
<p>Using Map.size:</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
document.getElementById("demo").innerHTML = fruits.size;
</script>
</body>
</html>
delete()
Metoden delete()
fjerner et kortelement:
fruits.delete("apples");
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Maps</h2>
<p>Deleting Map elements:</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
// Delete an Element
fruits.delete("apples");
document.getElementById("demo").innerHTML = fruits.size;
</script>
</body>
</html>
has()
Metoden has()
returnerer sand, hvis der findes en nøgle i et kort:
fruits.has("apples");
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Maps</h2>
<p>Using Map.has():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
document.getElementById("demo").innerHTML = fruits.has("apples");
</script>
</body>
</html>
fruits.delete("apples");
fruits.has("apples");
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Maps</h2>
<p>Using Map.has():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
// Delete an Element
fruits.delete("apples");
document.getElementById("demo").innerHTML = fruits.has("apples");
</script>
</body>
</html>
Iterable: Ikke direkte iterable
Størrelse: Har ikke en størrelsesegenskab
Nøgletyper: Nøgler skal være strenge (eller symboler)
Nøglerækkefølge: Nøgler er ikke ordentligt ordnet
Standarder: Har standardnøgler
Iterable: Direkte iterable
Størrelse: Har en størrelsesegenskab
Nøgletyper: Nøgler kan være enhver datatype
Nøglerækkefølge: Nøgler er sorteret efter indsættelse
Standarder: Har ikke standardnøgler
forEach()
Metoden forEach()
kalder en funktion for hvert nøgle/værdi-par i et kort:
// List all entries
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value;
})
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Map Objects</h2>
<p>Using Map.forEach():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
let text = "";
fruits.forEach (function(value, key) {
text += key + ' = ' + value + "<br>"
})
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
entries()
Metoden entries()
returnerer et iteratorobjekt med [nøgle, værdier] i et kort:
// List all entries
let text = "";
for (const x of fruits.entries()) {
text += x;
}
Prøv det selv →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Map Objects</h2>
<p>Using Map.entries():</p>
<p id="demo"></p>
<script>
// Create a Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
let text = "";
for (const x of fruits.entries()) {
text += x + "<br>";
}
document.getElementById("demo").innerHTML = text;
</script>
</body>
</html>
JavaScript-kort understøttes i alle browsere undtagen Internet Explorer:
Chrome | Edge | Firefox | Safari | Opera |