Hashmap-Äquivalent in JavaScript
Hashmap, auch als Hash-Tabelle bekannt, ist eine Sammlung von Elementen, in denen Elemente in Form eines Schlüssel-Wert-Paares gespeichert werden. Es gab damals keine vordefinierte Datenstruktur für Hashmaps, die in der Programmiersprache JavaScript implementiert waren. Nicht wie andere Programmiersprachen wie C++ oder Java, wo diese Datenstruktur bereits implementiert ist. Aus diesem Grund suchten die Leute nach verschiedenen Alternativen zur Implementierung von Hashmaps, und die meiste Zeit waren sie es gewohnt, Objekte zu verwenden, da sie auch die Struktur von Schlüsselwerten haben.
In der ES6-Version von JavaScript führt die JavaScript-Community eine neue Datenstruktur zur Implementierung einer Hashmap ein, die als Map
-Objekt bezeichnet wird und ein Schlüssel-Wert-Paar ist. Sehen wir uns an, wie Sie eine Hashmap mit dem Map
-Objekt implementieren und verschiedene Operationen wie Einfügen, Löschen und Aktualisieren mit einigen vordefinierten Methoden ausführen.
Implementieren von Hashmap mit dem Map
-Objekt in JavaScript
Das Objekt Map
ist, wie wir bereits gesehen haben, ein Schlüssel-Wert-Paar. Anfänglich ist die Karte leer; es werden keine Elemente darin sein. Der Schlüssel in einer Hashmap hat entweder den Typ string oder symbol und der Wert der Hashmap kann einen beliebigen Typ haben.
Um eine Map
zu erstellen, können Sie ein Objekt davon erstellen und in einer Variablen speichern, in diesem Fall hashmap
. Um nun Schlüssel-Wert-Paare in die Hashmap einzufügen, stellt JavaScript eine Methode namens set()
bereit. Diese Methode benötigt zwei Parameter, der erste ist der Schlüssel und der zweite der Wert. In die von uns erstellte hashmap
fügen wir vier Elemente ein, von denen jedes einen Wert eines anderen Typs wie Integer, Array, String und eine ganze Funktion hat. Unten ist der Code, der das gleiche demonstriert.
var hashmap = new Map();
hashmap.set('1', 700);
hashmap.set('2', [1, 2, 3]);
hashmap.set('3', 'This is a string');
hashmap.set('4', () => {console.log('Hello World')});
console.log(hashmap);
Nachdem Sie den obigen Code ausgeführt haben, sieht er in der Konsole so aus.
Wie Sie sehen, haben wir verschiedene Datentypen eingefügt, darunter eine ganze Funktion als Wert in die Hashmap.
Wir haben eine Hashmap erstellt; Lassen Sie uns versuchen, alle in unserer Hashmap vorhandenen Werte zu drucken. Dies kann mit Hilfe der forEach
-Schleife erfolgen.
hashmap.forEach(element => {
document.write('<br>' + element);
});
Die Ausgabe erfolgt direkt auf dem Bildschirm statt in der Konsole mit der Methode document.write()
.
Lassen Sie uns nun überprüfen, ob der Schlüssel ‘3’ in der Hashmap vorhanden ist oder nicht mit der Methode has()
. Wenn der Schlüssel in der Hashmap vorhanden ist, ändern oder ersetzen wir den bestehenden Wert des Schlüssels ‘3’ mit der Methode set()
.
if (hashmap.has('3')) {
hashmap.set('3', 'We changed the value...')
}
console.log(hashmap);
Ausgabe:
Um schließlich ein Element aus der Hashmap zu löschen, können Sie die Methode delete()
verwenden und den entsprechenden Schlüssel übergeben, den Sie löschen möchten. Und wenn Sie alle Elemente auf einmal aus der Hashmap entfernen und leer machen möchten, können Sie die Methode clear()
wie folgt verwenden.
// deletes 4th element
hashmap.delete('4');
console.log(hashmap);
// clears entire hashmap
hashmap.clear();
console.log(hashmap);
Unten ist die Ausgabe für den obigen Code.
Dies ist ein Äquivalent und der richtige Weg, um eine Hashmap in JavaScript zu erstellen.
Sahil is a full-stack developer who loves to build software. He likes to share his knowledge by writing technical articles and helping clients by working with them as freelance software engineer and technical writer on Upwork.
LinkedIn