Có một vài bước bạn cần phải thực hiện để lưu trữ đúng cách thông tin này trong localStorage của bạn. Trước khi chúng tôi nhận được xuống mã, tuy nhiên, xin lưu ý rằng localStorage (tại thời điểm hiện tại) không thể giữ bất kỳ loại dữ liệu nào ngoại trừ chuỗi. Bạn sẽ cần serialize mảng để lưu trữ và sau đó phân tích nó trở lại để thực hiện sửa đổi cho nó.
Bước 1:
Đoạn mã dưới đây Đầu tiên chỉ nên chạy nếu bạn chưa lưu trữ một mảng serialized trong biến localStorage session
của bạn.
Để đảm bảo localStorage bạn được thiết lập đúng cách và lưu trữ một mảng, chạy đoạn mã sau đây đầu tiên:
var a = [];
a.push(JSON.parse(localStorage.getItem('session')));
localStorage.setItem('session', JSON.stringify(a));
Đoạn mã trên nên chỉ được chạy lần và chỉ nếu bạn chưa lưu trữ một mảng trong localStorage session
biến. Nếu bạn đã làm điều này chuyển sang bước 2.
Bước 2:
Sửa đổi chức năng của bạn như sau:
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));
}
này nên chăm sóc phần còn lại cho bạn. Khi bạn phân tích nó ra, nó sẽ trở thành một mảng các đối tượng.
Hy vọng điều này sẽ hữu ích.
Cố gắng sử dụng 'window.a = []; 'và sau đó đẩy như thế này; 'window.a.push (receiveddata)'. Hoặc chỉ lưu trữ nó một lần trong một "a" mới khi bắt đầu chức năng. –
vẫn ghi đè – nielsv
Bạn cũng đang thực hiện trên đầu vào thực tế? 'localStorage.setItem ('session', window.a);' –