【发布时间】:2016-10-05 19:34:55
【问题描述】:
我被困在一个简单的事情上,即从 JavaScript 中的数组中删除一个项目(对象)。我也在使用 jQuery。
我正在尝试构建 RSS 提要,为此我将书签/收藏夹功能存储在 localStorage 中。当用户分别点击glyphicon-star 和glyphicon-star-empty 时,我需要从loalStorage array 添加/删除项目。
我面临的问题是取消收藏某个项目。即:从数组中删除对象。用户可以点击任何喜欢的项目(随机顺序)来取消收藏。为此,我需要按值从localstorage 中删除相应的项目,因为索引可能并不总是已知的。我确实使用grep 搜索了一个有效的解决方案并在我的代码中实现,但它似乎对我不起作用。
这是我发现并实现的,但它不起作用:
$(document).on('click', '.glyphicon-star', function(){
var y = arr;
var removeItem = obj;
arr = $.grep(arr, function(value) {
return value != obj;
});
localStorage.favorite = JSON.stringify(arr);
console.log(arr);
for (i=0; i<arr.length; i++)
{
console.log(arr[i]);
}
});
这里是工作:Fiddle
【问题讨论】:
标签: javascript jquery arrays local-storage