首页 > localstorage 一个key对应的value存储过多的数据合适吗

localstorage 一个key对应的value存储过多的数据合适吗

我的意思是 一个key对应的value是一个json数组 每个json都有图片转成的data:img/png 这个图片转换后很大的 所以相应的这个key对用的value数据量很大 其实就是字符串很长 这样适合吗?谢谢。


localStorage是有容量限制的。

W3C HTML5 Web Storage :

User agents should limit the total amount of space allowed for storage areas, because hostile authors could otherwise use this feature to exhaust the user's available disk space.

不同浏览器的容量限制不同,各个浏览器的支持与限制可以参考这个网站。

个人觉得用localStorage来存储图片不是很合适。


为什么不用IndexedDB(WebSimpleDB/Indexed Database API)呢?

你这个情况有几点特别适合用Indexed Database API:

当然缺点也是有的:IndexedDB使用起来复杂很多。可以参照 http://stackoverflow.com/questions/5924485/how-is-indexeddb-conceptually-different-from-html5-local-storage

如果想继续使用localStorage,答案是:

单条value没有长度限制,但是每个站点使用总量有限制(参照http://stackoverflow.com/questions/8345979/is-there-a-limit-to-the-key-length-for-localstorage)。

限制因浏览器而不同,常常会是2.5M(参照http://stackoverflow.com/questions/2989284/what-is-the-max-size-of-localstorage-values),或者可以自己测试(参照http://arty.name/localstorage.html)。

如果是Chrome插件的话,可以在manifest里开启unlimitedStorage,享用更大的quota。

【热门文章】
【热门文章】