Window: localStorage-Eigenschaft
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Die schreibgeschützte Eigenschaft localStorage der Schnittstelle window ermöglicht den Zugriff auf ein Storage-Objekt für den Origin des Document. Die gespeicherten Daten bleiben über Browsersitzungen hinweg erhalten.
localStorage ähnelt sessionStorage. Während Daten in localStorage jedoch nicht ablaufen, werden Daten in sessionStorage gelöscht, wenn die Seitensitzung endet – also wenn die Seite geschlossen wird. (localStorage-Daten eines Dokuments, das in einer Sitzung zum „privaten Surfen“ oder im „Inkognito-Modus“ geladen wurde, werden gelöscht, wenn der letzte „private“ Tab geschlossen wird.)
Wert
Ein Storage-Objekt, mit dem auf den lokalen Speicherbereich des aktuellen Origins zugegriffen werden kann.
Ausnahmen
SecurityErrorDOMException-
Wird in einem der folgenden Fälle ausgelöst:
- Der Origin ist kein gültiges Tupel aus Schema, Host und Port. Dies kann beispielsweise der Fall sein, wenn der Origin das Schema
file:oderdata:verwendet. - Die Anfrage verstößt gegen eine Richtlinie. Beispielsweise hat der Benutzer den Browser so konfiguriert, dass die Seite keine Daten dauerhaft speichern darf.
Beachten Sie, dass Browser das Blockieren von Cookies durch den Benutzer wahrscheinlich als Anweisung interpretieren, die dauerhafte Speicherung von Daten durch die Seite zu verhindern.
- Der Origin ist kein gültiges Tupel aus Schema, Host und Port. Dies kann beispielsweise der Fall sein, wenn der Origin das Schema
Beschreibung
Die mit localStorage gespeicherten Schlüssel und Werte liegen als Zeichenfolgen im Format UTF-16 vor. Wie bei Objekten werden ganzzahlige Schlüssel automatisch in Zeichenfolgen umgewandelt.
localStorage-Daten sind spezifisch für das Protokoll des Dokuments. Für eine über HTTP geladene Website (z. B. http://example.com) gibt localStorage ein anderes Objekt zurück als für dieselbe über HTTPS geladene Website (z. B. https://example.com).
Für Dokumente, die über file:-URLs geladen werden (also Dateien, die direkt aus dem lokalen Dateisystem des Benutzers im Browser geöffnet und nicht von einem Webserver bereitgestellt werden), ist das Verhalten von localStorage nicht festgelegt und kann sich zwischen Browsern unterscheiden.
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 lokalen Speicherbereich zu haben. Dieses Verhalten ist jedoch nicht garantiert. Sie sollten sich daher nicht darauf verlassen, denn wie bereits erwähnt ist das Verhalten für file:-URLs nicht festgelegt. Browser könnten ihre Behandlung von file:-URLs bei localStorage jederzeit ändern. Einige Browser haben ihr Verhalten diesbezüglich im Laufe der Zeit geändert.
Beispiele
Der folgende Ausschnitt greift auf das lokale Storage-Objekt der aktuellen Domain zu und fügt ihm mit Storage.setItem() einen Dateneintrag hinzu. Falls für diesen Schlüssel bereits ein Eintrag vorhanden ist, wird er aktualisiert.
localStorage.setItem("myCat", "Tom");
Die Syntax zum Lesen eines Eintrags aus localStorage lautet:
const cat = localStorage.getItem("myCat");
Die Syntax zum Entfernen eines Eintrags aus localStorage lautet:
localStorage.removeItem("myCat");
Die Syntax zum Entfernen aller Einträge aus localStorage lautet:
localStorage.clear();
Hinweis: Ein vollständiges Beispiel finden Sie im Artikel Verwendung der Web Storage API.
Spezifikationen
| Spezifikation |
|---|
| HTML> # dom-localstorage-dev> |