Es gibt ein paar Schritte, die Sie richtig ergreifen müssen, um diese Informationen in Ihrem localstorage zu speichern. Bevor wir uns jedoch dem Code zuwenden, beachten Sie bitte, dass localStorage (zur aktuellen Zeit) keinen beliebigen Datentyp außer Strings enthalten kann. Sie müssen das Array für den Speicher serialisieren und es dann erneut analysieren, um Änderungen daran vorzunehmen.
Schritt 1:
Die erste Code-Snippet nur ausgeführt werden, wenn Sie nicht bereits eine serialisierte Array in Ihrem local session
Variable zu speichern.
Um die localstorage ist korrekt eingerichtet und Speichern eines Array zu gewährleisten, den folgenden Codeausschnitt laufen zuerst:
var a = [];
a.push(JSON.parse(localStorage.getItem('session')));
localStorage.setItem('session', JSON.stringify(a));
Der obige Code sollte nur einmal und nur ausgeführt werden, wenn Sie nicht bereits Speichern eines Array in Ihrer localStorage session
Variable.
Ändern Sie bitte Ihre Funktion wie so: Wenn Sie bereits das 2.
Schritt 2 Schritt tun werden überspringen
function SaveDataToLocalStorage(data)
{
var a = [];
// Parse the serialized data back into an aray of objects
a = JSON.parse(localStorage.getItem('session'));
// Push the new data (whether it be an object or anything else) onto the array
a.push(data);
// Alert the array value
alert(a); // Should be something like [Object array]
// Re-serialize the array back into a string and store it in localStorage
localStorage.setItem('session', JSON.stringify(a));
}
Diese erledigt den Rest für Sie treffen sollten. Wenn Sie es analysieren, wird es zu einem Array von Objekten.
Hoffe, das hilft.
Try 'Fenster zu verwenden, erhalten zu JSON-String am Set und analysiert umgewandelt werden = []; 'und dann drücken Sie so; 'window.a.push (receiveddata)'. Oder speichern Sie es einfach einmal in einem neuen "a" zu Beginn der Funktion. –
überschreibt immer noch – nielsv
Machst du es auch am eigentlichen Eingang? 'localStorage.setItem ('session', window.a);' –