【发布时间】:2015-06-12 08:44:50
【问题描述】:
假设我有两个名为 Car 和 Wheel 的 JSON 对象。 Car 有一个 Wheel 集合,其余都是原始类型的属性。
汽车:
- 姓名
- 速度
- 轮子
轮子:
- 厚度
- 摩擦
现在,如果我想用 localStorage 保存这辆车,我有两个选择。
- 我可以序列化包括车轮在内的汽车对象,并使用汽车名称作为 localStorage 中的键(保存整个对象树)。
- 我还可以保存汽车,不包括车轮。单独保存轮子并给轮子一个 Id 属性。然后将 Car 引用到车轮 ID 集合(使对象树变平)。
我在第一个解决方案中看到的缺点是,如果我在代码中重命名 wheel 属性,我将丢失以前存储的数据,而通过 Id 引用和检索单独的轮子则不会。另一方面,第二种解决方案更像是关系数据库,而不是 JSON 的面向对象。
我的问题是:对于这种存储,我最适合使用什么?为什么?
【问题讨论】:
标签: json local-storage storage javascript-objects