【问题标题】:How to change the value of an item in localstorage using Javascript [duplicate]如何使用Javascript更改本地存储中项目的值[重复]
【发布时间】:2020-01-29 00:02:58
【问题描述】:

我有一个存储在 localStorage 中的对象。

let ship = {
    name: "black pearl",
    captain: "Jack Sparraw"
  };

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

现在我想将“名称”更改为新名称。如何使用 Javascript 实现?

(以下代码不起作用,但它给出了我想要做什么的想法)

 localStorage.setItem(localStorage.getItem("ship").name, "newName");

【问题讨论】:

标签: javascript json local-storage


【解决方案1】:

您检索 JSON,对其进行解析,更新您从解析中获得的对象,将结果字符串化并存储该结果:

const ship = JSON.parse(localStorage.getItem("ship"));
ship.name = "newName";
localStorage.setItem("ship", JSON.stringify(ship));

如果您想在一行中完成所有操作(虽然我不推荐这样做,但这种方式更难阅读、维护和调试;将缩小留给缩小器):

localStorage.setItem("ship", JSON.stringify(Object.assign(JSON.parse(localStorage.getItem("ship")), {name: "newName"})));

【讨论】:

  • @Ning - 感谢您的关注! (我认为您的编辑被审阅者拒绝了,因为您只修复了一个地方,但需要修复两个。)
猜你喜欢
  • 2017-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-29
  • 2018-12-18
  • 1970-01-01
相关资源
最近更新 更多