动态数组到本地存储/ jstorage?

时间:2013-07-15 12:30:54

标签: javascript jquery local-storage jstorage

我每隔10秒就将值推送到我的数组中,这是由innerHTML在div上显示的。

Onreload或访问其他网页我想显示已推送的内容和当前正在推送的内容。 我已经完成了本地的stroage和jstorage教程。

这就是我正在做的事情=:

localStorage.setItem('names', xyz);

我知道如何存储一个变量,但是当我们有一个动态数组被更新/ 10秒并且数据每隔10秒被推入它时我会如何设置并获得动态数组当我去其他一些链接时。

如果您对我的代码感兴趣:http://jsfiddle.net/vCcnB/

UPDATE 1 ----简化(如果您已理解,请忽略。) 这是我div中显示的内容.Page1表示页面,0,10,20表示时间。

@ 10 seconds----[page1,0]
                [page1,10]

@20 seconds-----[page1,0]
                [page1,10]
                [page1,20]
    now a click to some other page.

@10 seconds----[page1,0]
               [page1,10]
               [page1,20]
               [page2,0]
               [page2,10]
    now a click to some other page.

@20 seconds----[page1,10]
               [page1,20]
               [page2,0]
               [page2,10]
               [page3,0]
               [page3,10]
               [page3,20]    

2 个答案:

答案 0 :(得分:1)

您可以使用json object,例如,

localStorage.setItem('names', {'ABC','XYZ'}); //and so on

json string喜欢

var json={'ABC','XYZ'};
localStorage.setItem('names', JSON.stringify(json)); //and so on

获取现有的,请尝试使用

console.log(localStorage.getItem('names'));

阅读此https://developer.mozilla.org/en-US/docs/Web/Guide/DOM/Storage

答案 1 :(得分:0)

您必须分别对JSON.stringify和JSON.parse数组进行存储和加载。

// initialize
var myArray = [];
// load saved array
if(window.localStorage["savedArray"] != null)
    myArray = JSON.parse(window.localStorage["savedArray"]);
// modify array
myArray.push("abc123");
// re-save array
window.localStorage["savedArray"] = JSON.stringify(myArray);