如何通过单击div从本地存储中删除项目?

时间:2019-12-05 04:13:23

标签: javascript local-storage

我有两张引导卡。选择一张卡后,卡详细信息将转到本地存储中的阵列。现在我想要的是,如果我单击另一张卡,则应该删除以前的卡详细信息,而新的卡详细信息应进入阵列。

$("#room_next").click(function (){

    localStorage.setItem("object", JSON.stringify(object));

}) 

var storedNames = JSON.parse(localStorage.getItem("object"));

此处#roomnext是下一个按钮ID,而object是阵列名称,截至目前,两个卡的详细信息都存储在本地存储阵列中。我只需要选择一个。

3 个答案:

答案 0 :(得分:2)

您可以使用:localStorage.removeItem('object');删除另存为object的对象。

window.localStorage主要支持5种方法:

localStorage.setItem('key', 'value'): 
/* Add key and value to localStorage  */
localStorage.getItem('key')  // returns 'val' 
/* Retrieve a value by the key from localStorage */
localStorage.removeItem('key')
/* Remove an item by key from localStorage */
localStorage.clear()
/* Clear all localStorage */
localStorage.key(index)  //retrun key
/* Passed a number to retrieve nth key of a localStorage */

答案 1 :(得分:0)

作为Mozilla文档,

我们有removeItem() API中的方法Storage

您可以检查API docs here;

还有一个clear()可以删除所有内容。

我建议您检查打字稿,这样您就可以在开发环境中自动完成。

答案 2 :(得分:0)

如果可以通过ex:object_Id或其他方式标识要删除的对象。然后,您可以将对象传递到localStorage.removeItem('key');,以删除所需的对象。

例如:

function populateStorage() {
  localStorage.setItem('bgcolor', 'red');
  localStorage.setItem('font', 'Helvetica');
  localStorage.setItem('image', 'myCat.png');

  localStorage.removeItem('image');
}

您可以像这样设置对象,然后就可以删除想要的对象。在此示例中,图像被删除。 您可以参考this document了解更多信息。

您要传递给removeItem()的参数应该是一个字符串,用于指定要删除的项目的名称。