如何删除 localStorage 上的 ıtem?

How to remove ıtem on localStorage?

我想删除 localstorage 上的项目,但我不使用 localstorage.removeItem()。因为我想删除数组 (Sepet=array) 中的索引 我该怎么做 ? 谢谢

localStorage 用于存储字符串值,因此如果您想删除特定索引处的项目,请记住您需要将字符串化数组转换为普通 JS 数组,然后使用 [=10 删除项目=],并将更新后的数组保存回localStorage。

您可以查看 Array.slice() documentation

var array = [
{
'id': 1,
'name':'test1'
},
{
'id': 2,
'name':'test2'
},
{
'id': 3,
'name':'test3'
}
];

console.log(array);
localStorage.setItem('test', JSON.stringify(array));
var selected = 1;
 var getArray = JSON.parse(localStorage.getItem('test'))
getArray.splice(selected,1);
localStorage.setItem('test', JSON.stringify(getArray));
console.log(getArray);

要从 localStorage 获取对象,您需要 Helper:localStorage.getItem('objectName');。你会得到一个字符串而不是一个对象。要将此字符串转换为对象,您需要函数 JSON.parse(string)。在这一点上,您可以使用该对象。如果您将按索引删除项目,然后使用 object[index] 删除它,如果您将按值键删除项目,如 id: 2,则使用 JS 对象函数功能,如 splice 删除此项目。

之后,您必须再次将对象字符串化为 JSON.stringify(object) 的字符串。您可以使用以下方法将此字符串存储在 lcoalStorage 中:localStorage.set(string)

这就是整个工作流程。