1

我刚刚重新编写了 HTML5 持久存储 (localStorage) 容量的测试(前一个在内存中创建了 1 个密钥,因此它属于内存异常)。我还为它创建了 jsFiddle:http: //jsfiddle.net/rxTkZ/4/

测试代码是一个循环:

   var value = new Array(10001).join("a")
   var i = 1
   var task = function() {
       localStorage['key_'+i] = value
       $("#stored").text(i*10)
       i++
       setTimeout(task)
   }
   task()

IE9 下的本地存储容量,与其他浏览器相反,似乎实际上是无限的——我已经设法存储了超过 4 亿个字符,并且测试仍在运行。

这是我可以依赖的功能吗?我正在编写用于 Intranet 的应用程序,其中将使用的浏览器是 IE 9。

4

1 回答 1

1

对此的简单回答::)

不要把自己画到角落里。Web 存储并不意味着存储浪费的数据量。标准只推荐5 mb,一些浏览器实现了这个,其他的更少(考虑到每个 char 占用 2 个字节,你只能得到一半的感知)。

Opera 允许用户调整大小(12 个分支,不知道基于 webkit 的新版本),但这完全是用户发起的操作。

就存储空间而言,它不是可靠的存储。至于IE9,它必须被认为是一个暂时的缺陷。

如果您需要大空间,请考虑File API(您可以在其中请求用户批准的大量兆字节配额)或Indexed DB

于 2013-07-11T23:15:41.343 回答