Signatur
Beschreibung
Die schreibgeschützte Eigenschaft localStorage des window-Interfaces ermöglicht den Zugriff auf ein Storage-Objekt für den Origin des Document; die gespeicherten Daten bleiben über Browser-Sitzungen hinweg erhalten.
localStorage ist ähnlich zu sessionStorage, mit dem Unterschied, dass localStorage-Daten keine Ablaufzeit haben, während sessionStorage-Daten gelöscht werden, sobald die Seiten-Session endet — das heißt, wenn die Seite geschlossen wird. (localStorage-Daten für ein Dokument, das in einer "privaten Browsing"- oder "Inkognito"-Sitzung geladen wurde, werden gelöscht, sobald der letzte "private" Tab geschlossen wird.)
Wert
Ein Storage-Objekt, das für den Zugriff auf den lokalen Speicherbereich des aktuellen Origins verwendet werden kann.
Ausnahmen
SecurityError— Wird in einem der folgenden Fälle geworfen:- Der Origin ist kein gültiges Scheme/Host/Port-Tupel. Dies kann zum Beispiel passieren, wenn der Origin die Schemata
file:oderdata:verwendet. - Die Anfrage verletzt eine Policy-Entscheidung. Beispielsweise hat der Nutzer den Browser so konfiguriert, dass die Seite keine Daten persistieren darf.
- Der Origin ist kein gültiges Scheme/Host/Port-Tupel. Dies kann zum Beispiel passieren, wenn der Origin die Schemata
Beschreibung
Die mit localStorage gespeicherten Keys und Werte liegen im UTF-16-String-Format vor. Wie bei Objekten werden Integer-Keys automatisch in Strings umgewandelt.
localStorage-Daten sind spezifisch für das Protokoll des Dokuments. Insbesondere gibt localStorage für eine über HTTP geladene Seite (z.B. http://example.com) ein anderes Objekt zurück als localStorage für dieselbe Seite, die über HTTPS geladen wurde (z.B. https://example.com).
Für Dokumente, die von file:-URLs geladen werden (also Dateien, die direkt aus dem lokalen Dateisystem des Nutzers im Browser geöffnet werden, statt von einem Webserver ausgeliefert zu werden), sind die Anforderungen an das Verhalten von localStorage nicht definiert und können zwischen verschiedenen Browsern variieren.
In allen aktuellen Browsern scheint localStorage für jede file:-URL ein anderes Objekt zurückzugeben. Mit anderen Worten: Jede file:-URL scheint einen eigenen, eindeutigen Local-Storage-Bereich zu haben. Es gibt jedoch keine Garantien für dieses Verhalten, sodass man sich nicht darauf verlassen sollte, da wie oben erwähnt die Anforderungen für file:-URLs undefiniert bleiben. Es ist also möglich, dass Browser ihre Handhabung von file:-URLs für localStorage jederzeit ändern. Tatsächlich haben einige Browser ihre Handhabung im Laufe der Zeit geändert.
Rückgabewert
Beispiele
Element setzen
localStorage.setItem("myCat", "Tom");
Element lesen
const cat = localStorage.getItem("myCat");
Element entfernen
localStorage.removeItem("myCat");
Alle Elemente entfernen
localStorage.clear();