JavaScript如何修改存储在localStorage中的对象并重新保存
localStorage对象属性更新实现方案
核心逻辑
你只需要在读取到本地存储的对象后,直接修改对应属性,再重新序列化存入localStorage即可,完整实现代码如下:
// 读取本地存储的工单对象(如果你的$localStorage封装是同步方法可删除await) let offline_work_order = await JSON.parse(this.$localStorage.get(`work_order_${this.id}`)); // 替换为你实际需要更新的initial_kg、final_kg数值 offline_work_order.initial_kg = 你的新初始重量值; offline_work_order.final_kg = 你的新最终重量值; // 两种存回方式二选一: // 方式1:需同步更新当前组件的work_order变量时使用 this.work_order = offline_work_order; this.$localStorage.set(`work_order_${this.id}`, JSON.stringify(this.work_order)); // 方式2:无需更新组件变量,直接存回本地 // this.$localStorage.set(`work_order_${this.id}`, JSON.stringify(offline_work_order));
注意事项
- 原生localStorage读写都是同步操作,如果你没有做异步封装可以删除代码中的
await关键字,避免逻辑异常 - 修改属性时注意拼写要和原对象属性名完全一致,区分大小写,避免生成多余属性
- 存入localStorage前必须用
JSON.stringify序列化对象,否则会存储为[object Object]的无效字符串
内容的提问来源于stack exchange,提问作者Swift Solutions
相关产品推荐
相关产品推荐

