最好将一个大JSON对象存储在本地存储中并将其附加到其他数据中或使用多个带有数据的小对象吗?我想将它用作任何一些应用程序的历史存储(所以我认为5MB就足够了)。 感谢
答案 0 :(得分:2)
这实际上取决于您想要访问数据的方式: 如果您想偶尔访问数据的一小部分,则应将其放入小对象中。我前一段时间做了几次性能测试,发现在一个充满了大量对象的localStorage中查找对象快速退出。如果使用小对象,则可能使用较少的内存,因为您不必读取和解析大的json对象。 另一方面,请记住读取localStorage是一种阻止功能。因此,如果您需要迭代对象,我可能会阻止您的整个浏览器。在这种情况下,最好将数据保存在一个巨大的块中并立即读取它。
答案 1 :(得分:0)
调用一个函数和一个像这样的项目肯定更容易
localStorage.setItem('JSON', '{"whole":[{"lotta":"json"}],"data":"here"}');
你也可以使用localStorage
像这样的常规对象:
localStorage['JSON'] = '{"whole":[{"lotta":"json"}],"data":"here"}';
但无论哪种方式,您都必须解析JSON并针对它运行函数等。
这实际上取决于您要存储的历史记录数以及您希望如何存储它。
同样localStorage
在访问之间仍然存在,如果您只需要在当前访问期间保留历史记录,则可以使用sessionStorage
完全相同的方式。
答案 2 :(得分:0)
我通常将它用于更小的对象,我正在使用CarboStorage库,这是localStorage的包装。