什么是HTML5中的的localStorage存储对象数据的最佳方式。我还没有和关键值存储太多的工作。

在我的研究,我已经看到了一些不同的方法。

示例数据:

var commands = [
  {invokes: 'Window', type: 'file', data: '/data/1'},
  {invokes: 'Action', type: 'icon', data: '/data/2'},
  {invokes: 'Window', type: 'file', data: '/data/3'}
];

方法1:存储密钥表示每个数据项

// for(...) {
localStorage["command[" + i + "].invokes"] = command[i].invokes
localStorage["command[" + i + "].type"] = command[i].type
localStorage["command[" + i + "].data"] = command[i].data
//}

方法2:键是实体名称,商店JSON

localStorage["commands"] = JSON.stringify(commands);

第二方法将需要一个JSON.parse()来。

优点/缺点?

有帮助吗?

解决方案

有关我的方法2.我的关键是类似于一个表名去记录,该值是一个记录的JSON字符串化阵列。当检索该表必须调用JSON.parse()来。

其他提示

技术本地存储有: HTTP: //madhukaudantha.blogspot.com/2011/02/client-side-storages-with-html-5.html ...

方法2,行.. 有更多的方法

当然,你的方法工作得很好,但它确实让你有点卡住你选择了前进的惯例。我建议你考虑你的包裹访问的localStorage在一个类里,这样你的惯例是孤立的一类作为一个真正的约定。

否则你应该选择更改浩你走近它,你将有实现代码散布在整个代码库。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top