如果我在两个位置存储数据,将两者的大小都计为1,或者它们是分开的..例如,如果在电话上本地存储10 MB,在电话上的indexdDB中存储5 MB,则会抱怨我空间不足?
答案 0 :(得分:2)
这取决于浏览器。
在当前版本的Chrome中(这可能会更改!),配额系统中未考虑localStorage,并且每个来源都有固定的10MB上限。其他存储类型(索引数据库,高速缓存存储等)共享分配给每个来源的动态计算的配额(当前大约为磁盘大小的6%,但因操作系统/设备类型而异)。因此localStorage和Indexed DB不竞争。但这只是Chrome。其他浏览器的处理方式可能有所不同。
Firefox和Chrome都提供一种navigator.storage.estimate()
方法,可让您按来源检查使用情况和配额。您可以使用它来确定该浏览器的配额系统中是否反映了特定的存储机制。