在HTML5和JavaScript中循环遍历localStorage
因此,我以为我可以像普通对象一样遍历localStorage,因为它具有长度。我该如何循环?
localStorage.setItem(1,'Lorem');localStorage.setItem(2,'Ipsum');
localStorage.setItem(3,'Dolor');
如果我这样做,localStorage.length
则返回3
正确。所以我认为for...in
循环会起作用。
我在想类似的东西:
for (x in localStorage){ console.log(localStorage[x]);
}
但无济于事。有任何想法吗?
我的另一个想法是
localStorage.setItem(1,'Lorem|Ipsum|Dolor')var split_list = localStorage.getItem(1).split('|');
在其中for...in
工作。
回答:
您可以使用该key
方法。
localStorage.key(index)
返回index
第一个键(顺序是实现定义的,但是在您添加或删除键之前是恒定的)。
for (var i = 0; i < localStorage.length; i++){ $('body').append(localStorage.getItem(localStorage.key(i)));
}
如果顺序很重要,则可以存储JSON序列化数组:
localStorage.setItem("words", JSON.stringify(["Lorem", "Ipsum", "Dolor"]));
规范草案声称,任何支持结构化克隆的对象都可以是一个值。但这似乎尚不支持。
编辑:要加载数组,添加到它,然后存储:
var words = JSON.parse(localStorage.getItem("words"));words.push("hello");
localStorage.setItem("words", JSON.stringify(words));
以上是 在HTML5和JavaScript中循环遍历localStorage 的全部内容, 来源链接: utcz.com/qa/430253.html