此问题已在此处有答案:
Remove array item from localstorage(4个答案)
昨天关门了。
在具有多个对象{}数组中,但我希望从本地存储中删除一个对象供我们选择
function del(e){
let parenttag=e.parentElement.parentElement;
let td=parenttag.getElementsByTagName('td')[2];
let match=td.innerText;
// console.log(typeof match);
let studen=localStorage.getItem('student');
let student=JSON.parse(studen);
// for(let key in student){
// if(student[key].rollnumber===match){
// console.log(key + ":" +student[key]);
// console.log(student[key]);
// }
// }
student.filter((item)=>{
if(item.rollnumber!==match){
return false;
}
console.log(item);
localStorage.removeItem(item);
return item;
})
我尝试过滤功能,但一个唯一的对象是显示,我的目标,但它不能从本地存储删除。
1条答案
按热度按时间afdcj2ne1#
removeItem()接受一个Key,如果你想移除数组中的一个元素,你需要再次使用localStorage.setItem()。“更新”项目。
这里的主要变化是,在过滤数组以排除具有匹配rollnumber的学生之后,我们然后使用新数组更新本地存储。setItem方法将用更新后的数组覆盖本地存储中以前的数组。