Die HTML5-Webspeicher-API bietet zwei Mechanismen zum Speichern von Datenpaaren von Daten im Webbrowser eines Benutzers: localStorage
und sessionStorage
. Beide bieten eine einfache Möglichkeit, Daten auf der Client-Seite zu bestehen, und beseitigt die Notwendigkeit häufiger Serverrundfahrten, um kleine Informationen abzurufen oder zu aktualisieren. Dies verbessert die Anwendungsleistung und die Benutzererfahrung erheblich, insbesondere für Aufgaben wie das Erinnern von Benutzerpräferenzen, die Wartung von Einkaufswagen oder das Speichern von temporärem Anwendungszustand.
Um die API zu verwenden, greifen Sie über das window
des Browsers darauf zu. localStorage
bleibt auf unbestimmte Zeit bestehen, auch nachdem der Browser geschlossen und wiedereröffnet wurde. sessionStorage
-Daten sind jedoch nur für die Dauer einer einzelnen Browser -Sitzung verfügbar. Das Schließen des Browser -Fensters oder der Registerkarte Löscht die sessionStorage
-Daten.
Hier ist ein grundlegendes Beispiel für das Einstellen und Abrufen von Daten mithilfe von localStorage
:
<code class="javascript">// Store data localStorage.setItem('username', 'JohnDoe'); // Retrieve data let username = localStorage.getItem('username'); console.log(username); // Output: JohnDoe // Remove data localStorage.removeItem('username'); // Clear all data localStorage.clear();</code>
Die gleichen Methoden ( setItem
, getItem
, removeItem
, clear
) gelten auch für sessionStorage
. Die Auswahl zwischen localStorage
und sessionStorage
hängt von den spezifischen Anforderungen Ihrer Anwendung ab.
Der Hauptunterschied zwischen localStorage
und sessionStorage
liegt in ihrer Ausdauer:
localStorage.removeItem()
oder localStorage.clear()
explizit entfernt wurden.sessionStorage
-Daten. Dies eignet sich für temporäre Daten, die nur innerhalb einer einzigen Sitzung relevant sind, z. B. Artikel in einem Einkaufswagen oder in einem temporären Anwendungszustand. Ein weiterer subtiler Unterschied besteht darin, dass sessionStorage
nicht über verschiedene Browser -Registerkarten oder Windows ausgetauscht wird, die aus demselben Ursprung stammen. Wenn Sie mehrere Registerkarten für dieselbe Website öffnen, verfügt jede Registerkarte über eine eigene unabhängige sessionStorage
. localStorage
hingegen wird auf alle Registerkarten und Fenster aus demselben Ursprung geteilt.
Die Verwendung von HTML5 -Webspeicher wird zwar bequem potenzielle Sicherheits- und Datenschutzbedenken einführen:
localStorage
JavaScript -Code, der auf derselben Website (z. B. über XSS -Schwachstellen, z sessionStorage
localStorage
und sessionStorage
gespeicherten Daten sind nur für die Website zugänglich, die sie gespeichert hat, aber vertrauliche Informationen sollten niemals direkt gespeichert werden. Erwägen Sie, Verschlüsselungs- oder Hashing -Techniken für sensible Daten vor dem Speichern zu verwenden.Diese Risiken zu mildern:
Das Abrufen von Daten ist mit getItem()
unkompliziert. Um Daten zu manipulieren, müssen sie abgerufen, diese geändert und dann mit setItem()
zurückgespeichert werden.
<code class="javascript">// Retrieve data let storedData = localStorage.getItem('myData'); // Parse JSON data (if stored as JSON) let myObject = JSON.parse(storedData); // Modify the data myObject.name = "Updated Name"; // Stringify the object back to JSON let updatedData = JSON.stringify(myObject); // Store the updated data localStorage.setItem('myData', updatedData);</code>
In diesem Beispiel zeigt das Abrufen von Daten, die als JSON -Objekt gespeichert sind, diese ändern und dann das aktualisierte Objekt wieder in localStorage
speichern. Denken Sie daran JSON.stringify()
immer zu verwenden, bevor Objekte oder Arrays und JSON.parse()
beim Abrufen gespeichert werden. Für einfache Zeichenfolgen oder Zahlen reicht die direkte Verwendung von getItem()
und setItem()
aus. Sie können auch über localStorage
über eine for
die Schleife und ihre Länge zugängliche Eigenschaft auf alle gespeicherten Schlüsselwertpaare iterieren. Die gleichen Grundsätze gelten für sessionStorage
.
Das obige ist der detaillierte Inhalt vonWie verwende ich die HTML5-Webspeicher-API (LocalStorage und SessionStorage) für die clientseitige Datenspeicherung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!