localStorage.removeItem(key);问题(即使使用正确的密钥,刷新时也不会有任何变化)



>我有以下本地存储项目设置如下:

localStorage.setItem("diary1536771000001", item);

然而,当尝试使用上述键和代码删除项目时:

localStorage.removeItem('diary1536771000001');

刷新后,该项目仍然存在。

手头的任务是能够删除(删除)在刷新浏览器时保持删除状态的日记条目。然而,我尝试过的一切都让我回到了原始页面,并完成了完整的日记条目。我尝试在代码编辑后刷新 chrome 中的缓存(我正在大学服务器上工作,有时可能会有问题),但仍然没有运气。我已经浏览了几个帖子,但除了告诉我如何删除项目外,我空手而归。

我的代码中是否缺少一些东西,可以防止日记条目在下次刷新时重新出现?

对此相对较新,因此对于我可能错过的任何事情或语法问题,我深表歉意。

// Create and store demonstration data
  function createDemoItems() {
   var item;

item = makeItem(
      "text",
    "day 1."
    );
    localStorage.setItem("diary1536771000001", item);

item = makeItem(
      "text",
    "day 2."
    );
    localStorage.setItem("diary1536771000002", item);

 // Remove the item from local storage by key
    localStorage.removeItem("diary1536771000001");
}

由于您使用的是添加和删除项目的函数,因此您永远不会看到它发生。

此外,localStorage 是一个键/值数据库,这意味着您只能存储一个键和值,而不能像您那样存储具有 2 个不同值的键。

如果您打开控制台并写入

localStorage.setItem('diary1536771000001', 'text');

然后打开您的检查器(在我的例子中是谷歌浏览器),然后转到"应用程序"选项卡,您将在"本地存储"下看到他们的键/值对已被添加。

如果随后切换回控制台并写入

localStorage.removeItem('diary1536771000001');

然后再次检查"应用程序"选项卡,您将看到它已被删除。

最新更新