更新本地存储 json.stringify

update local storage json.stringify

我有一个 localStorage 作为 JSON 字符串。看起来像:

{"ttl":15778500,"now":1426846074300,"id":"1","name":"I am","id":"69"}

我只需要更改 "id" 的值并保持其他值不变。

我的代码如下:

 var dbget = JSON.parse(localStorage.getItem('localStorage') || "0");
 dbget.id = 25;

但是当我尝试保存时它不起作用。

 localStorage.setItem('localStorage', JSON.stringify(dbget));

你能建议我怎么做吗?非常感谢。

您的 json

中有重复的 id

因为第一次没有json对象,dbget只有0,会报错,没有添加对象,尝试改初始化,

// Add empty object {} in place of "0" -------------------------v
var dbget = JSON.parse(localStorage.getItem('localStorage') || {} );
dbget.id = 25;

问题出在我带有两个 ID 的原始字符串中:

{"ttl":15778500,"now":1426846074300,"id":"1","name":"I am","id":"69"}

当我将一个 id 更改为 id2 时,它按预期工作。

我的 JSON 不正确,不应该有重复的 ID:

{"ttl":15778500,"now":1426846074300,"id":"1","name":"I am","id2":"69"}