Heim >Web-Frontend >js-Tutorial >Wie kann ich Nicht-String-Daten in HTML5 LocalStorage/SessionStorage speichern?

Wie kann ich Nicht-String-Daten in HTML5 LocalStorage/SessionStorage speichern?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-22 14:41:11642Durchsuche

How Can I Store Non-String Data in HTML5 LocalStorage/SessionStorage?

So speichern Sie Nicht-Strings im HTML5 LocalStorage/SessionStorage

Im Gegensatz zu primitiven Typen und Arrays werden JavaScript-Objekte direkt im HTML5-Speicher gespeichert führt zu ihrer Konvertierung in Strings. Diese Einschränkung sorgte für Diskussionen und führte bei Entwicklern zu Verwirrung.

Gemäß der HTML5-Webspeicherspezifikation erwartet die setItem()-Methode, dass Schlüssel/Wert-Paare Zeichenfolgen sind. Um diese Einschränkung zu überwinden, ziehen Sie die folgende Problemumgehung in Betracht:

JSON-Serialisierung und -Deserialisierung

Um ein Objekt im HTML5-Speicher zu speichern, konvertieren Sie es mit JSON.stringify in einen JSON-String (). Analysieren Sie die JSON-Zeichenfolge nach dem Abruf mithilfe von JSON.parse() wieder in ein Objekt.

var testObject = { 'one': 1, 'two': 2, 'three': 3 };

// Put the object into storage
localStorage.setItem('testObject', JSON.stringify(testObject));

// Retrieve the object from storage
var retrievedObject = JSON.parse(localStorage.getItem('testObject'));

console.log('Retrieved object:', retrievedObject);

Beispielausgabe:

Retrieved object: { one: 1, two: 2, three: 3 }

Durch vorherige Serialisierung des Objekts Durch die Speicherung und Deserialisierung nach dem Abruf können Sie JavaScript-Objekte effektiv im HTML5-Speicher speichern und abrufen.

Das obige ist der detaillierte Inhalt vonWie kann ich Nicht-String-Daten in HTML5 LocalStorage/SessionStorage speichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn