我有一个脚本将formdata放入localStorage。数据保存在数组中。我想要数组中的元素,其中列表没有括号,并且在彼此之下。是否有人暗示我该怎么做?
div中的数组和输出如下所示:
[[{"EMail":"testmail@test.com","Salutaion":"Mr","FirstName":"Test","Name":"Testname"},{"EMail":"testy@test.com","Salutaion":"Mrs","FirstName":"Testy","Name":"TestyFemale"}]]
在div中显示数组的脚本:
var output = '';
for (var key in localStorage) {
output = output+(key + ':' +localStorage[key])+'\n';
}
$('#divtoshowarray').html(output);
答案 0 :(得分:2)
这是更新后的代码
$(document).ready(function() {
var testObject = { 'one': 1, 'two': 2, 'three': 3 };
localStorage.setItem('testObject', JSON.stringify(testObject));
var output = '';
var objectFromLS = JSON.parse(localStorage.getItem('testObject'));
for (var key in objectFromLS) {
if (objectFromLS.hasOwnProperty(key)) {
output = output+(key + ':<br>' +objectFromLS[key])+'\n';
}
}
$('#divtoshowarray').html(output);
});
要点
您希望迭代存储在localStorage中的testObject数据。所以你需要从localStorage获取testObject并迭代它。请注意,localStorage.getItem将返回字符串,因此,您需要解析它以返回JSON。
然后你需要迭代对象,绘制键值对。