HTML5 Web Storage
HTML5 Web Storage, eine bessere lokale Speichermethode als Cookies.
Was ist HTML5 Web Storage?
Mit HTML5 können Sie die Browserdaten der Nutzer lokal speichern.
In der Vergangenheit wurde für die lokale Speicherung Cookies verwendet. Aber Web Storage ist sicherer und schneller. Diese Daten werden nicht auf dem Server gespeichert, sondern nur für Daten verwendet, die die Website des Nutzers anfordert. Außerdem können große Datenmengen gespeichert werden, ohne die Leistung der Website zu beeinträchtigen.
Daten werden als Schlüssel/Wert-Paare gespeichert, und auf die Daten einer Webseite kann nur diese Webseite zugreifen und sie verwenden.
Browser-Unterstützung
![]()
![]()
![]()
![]()
![]()
Internet Explorer 8+, Firefox, Opera, Chrome und Safari unterstützen Web Storage.
Hinweis:Internet Explorer 7 und frühere IE-Versionen unterstützen Web Storage nicht.
localStorage und sessionStorage
Die beiden Objekte zum Speichern von Daten auf der Clientseite sind:
- localStorage - wird verwendet, um Daten für die gesamte Website über einen langen Zeitraum zu speichern. Die gespeicherten Daten haben keine Ablaufzeit, bis sie manuell entfernt werden.
- sessionStorage - wird verwendet, um Daten vorübergehend für dasselbe Fenster (oder Tab) zu speichern. Diese Daten werden gelöscht, nachdem das Fenster oder der Tab geschlossen wurde.
Bevor Sie Web Storage verwenden, sollten Sie prüfen, ob der Browser localStorage und sessionStorage unterstützt:
localStorage-Objekt
Vom localStorage-Objekt gespeicherte Daten haben kein Zeitlimit. Sie sind am nächsten Tag, in der nächsten Woche oder im nächsten Jahr weiterhin verfügbar.
Beispiel
Selbst ausprobieren »
Beispielerklärung:
- Verwendekey="sitename"undvalue="Example", um ein localStorage-Schlüssel/Wert-Paar zu erstellen.
- Rufe den Wert mit dem Schlüssel "sitename" ab und füge die Daten in das Element mitid="result"ein.
Das obige Beispiel kann auch so geschrieben werden:
Entferne "sitename" aus localStorage:
Ob localStorage oder sessionStorage – die verfügbaren APIs sind dieselben. Die häufig verwendeten sind wie folgt (am Beispiel von localStorage):
- Daten speichern: localStorage.setItem(key,value);
- Daten lesen: localStorage.getItem(key);
- Einzelne Daten löschen: localStorage.removeItem(key);
- Alle Daten löschen: localStorage.clear();
- Den Schlüssel an einem bestimmten Index abrufen: localStorage.key(index);
Tipp:Schlüssel/Wert-Paare werden normalerweise als Zeichenketten gespeichert, und Sie können das Format nach Bedarf konvertieren.
Das folgende Beispiel zeigt, wie oft ein Benutzer auf eine Schaltfläche klickt.
Konvertieren Sie die Zeichenkettenwerte im Code in numerische Typen:
Beispiel
Selbst ausprobieren »
sessionStorage-Objekt
sessionStorage speichert Daten für eine Sitzung. Wenn der Benutzer das Browserfenster schließt, werden die Daten gelöscht.
So erstellen Sie eine sessionStorage und greifen darauf zu:
Beispiel
Selbst ausprobieren »
Verwenden Sie Web Storage, um ein einfaches Website-Listenprogramm zu entwickeln
Das Website-Listenprogramm implementiert die folgenden Funktionen:
- Sie können den Websitenamen und die URL eingeben und den Websitenamen als Schlüssel in localStorage speichern;
- Schlagen Sie die URL anhand des Websitenamens nach;
- Listen Sie alle aktuell gespeicherten Websites auf;
Der folgende Code wird verwendet, um Daten zu speichern und zu finden:
save()- und find()-Methoden
Das vollständige Beispiel wird wie folgt demonstriert:
Beispiel
Selbst ausprobieren »
Screenshot des Implementierungseffekts:

Das obige Beispiel zeigt nur einfache localStorage-Speicherung und -Abruf; in den meisten Fällen sind die Daten, die wir speichern, komplexer.
Als Nächstes verwenden wirJSON.stringify, um Objektdaten zu speichern,JSON.stringify, was ein Objekt in einen String umwandeln kann.
Danach verwenden wir dieJSON.parse-Methode, um die Zeichenkette in ein JSON-Objekt umzuwandeln:
JavaScript-Implementierungscode:
save()- und find()-Methoden
Das vollständige Beispiel lautet wie folgt:
Beispiel
Selbst ausprobieren »
Im Beispiel gibt loadAll alle gespeicherten Daten aus. Sie müssen sicherstellen, dass alle in localStorage gespeicherten Daten im JSON-Format vorliegen, andernfalls löst JSON.parse(str) einen Fehler aus.
Demonstration des Ausgabeergebnisses:
