我读到localStorage的最大大小约为 5MB 。但我做了一些非常奇怪的事情,显示了另一个结果
我从互联网上复制了一个1024x768
图像(用于启动图像),然后将其转换为基础64.我把它放在一个文件中,看到该文件是 300KB 。然后,我写了下面的代码:
for(var a;a<1000;a++)
{
try{localStorage["'"+a+"'"]="The very long string of 75000 characteres";}
catch(e)
{
alert("No !");
break;
}
}
alert("Yes !");
我的iPad提醒Yes !
。 1000 * 300 = 300000KB - &gt; 300MB 。这意味着localStorage存储了 300MB 的信息!
这怎么可能? localStorage是压缩还是什么?
编辑:最后,这是一个错字。 for(var a;a<1000;a++)
代替for(var a=0;a<1000;a++)
。如果有人想知道,我成功地传了6张图片。
答案 0 :(得分:3)
你的for循环从未执行,因为你没有初始化你的循环变量。尝试
for(var a=0;a<1000;a++)