gpt4 book ai didi

javascript - HTML5 本地存储 JSON 多个对象

转载 作者:搜寻专家 更新时间:2023-10-31 22:33:20 24 4
gpt4 key购买 nike

有谁知道,当我在 javascript 中执行循环时,是否可以创建一个包含多个对象的本地存储?

目前我的代码是这样的:

var albums = '';
var album_list = '';

$.each(data, function(i,item){
var name = item.name;
albums += '<li>'+item.name+'</li>';

var album_content = {name: item.name, uid: 1};
var album_content = album_content+',';

album_list += album_content;


});

var album_list = '['+album_list+']';
localStorage.setItem("albums", JSON.stringify(album_list));
var albums_l = JSON.parse(localStorage.getItem("albums"));

$.each(albums_l, function(i,item){
console.log(item.name);
});

但这给了我一个错误。任何人对此有更好的解决方案,所以我只有一个本地存储和其中的所有数据?

最佳答案

您在代码中混合了对象和字符串。您的 album_content 在循环中被初始化为对象 ({name: item.name, uid: 1})。在下一行中,您通过附加逗号将其视为字符串。

总体上使用数组来收集所有对象。使用 native 对象(几乎)总是比尝试以某种方式模拟它们更好。

试试这个代码。

var albums = '';
var album_list = [];

$.each(data, function(i,item){
var name = item.name;
albums += '<li>'+item.name+'</li>';

var album_content = {name: item.name, uid: 1};
// remove that line completly
// var album_content = album_content+',';

album_list.push( album_content );

});


localStorage.setItem("albums", JSON.stringify( album_list ));
var albums_l = JSON.parse(localStorage.getItem("albums"));

$.each(albums_l, function(i,item){
console.log(item.name);
});

关于javascript - HTML5 本地存储 JSON 多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10347265/

24 4 0
文章推荐: javascript - 我正在制作浏览器内的单色 LED 显示屏。我应该使用 还是
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com