Ort*_*iel 25 html javascript google-chrome local-storage
我有一个JavaScript代码,它将字符串保存到本地存储,字符串大小为400000,
var dataURL = canvas.toDataURL("image/jpg").toString();
localStorage.setItem("dataURL", dataURL);
Run Code Online (Sandbox Code Playgroud)
我从chrome打开html文件,在一台计算机上我可以在另一台计算机上运行
未捕获的QuotaExceededError:无法在"存储"上执行"setItem":设置"dataURL"的值超出了配额.
在这台计算机中,我允许保存字符串长度不超过100000个字符.两台计算机都具有相同的chrome版本35.0.1916.114 m为什么?
小智 12
当您的浏览器达到最大限制时,它将抛出此错误无法在"存储"上执行'setItem':设置''的值超出配额.
try {
var count = 100;
var message = "LocalStorageIsNOTFull";
for (var i = 0; i <= count; count + 250) {
message += message;
localStorage.setItem("stringData", message);
console.log(localStorage);
console.log(count);
}
}
catch (e) {
console.log("Local Storage is full, Please empty data");
// fires When localstorage gets full
// you can handle error here or empty the local storage
}Run Code Online (Sandbox Code Playgroud)
小智 5
chrome本地存储的默认值为25M,因此请清除您的chrome本地存储。祝好运!
小智 5
由于以下原因,也可能发生此类错误:
您可以将值存储在单个 localStorage 键中是有限制的。
例如,如果我写 localStorage.setItem('data',allData); 然后有一个限制设置为'data'键,它可以在'allData'值中存储指定数量的字符。
在 chrome 和 firefox 中,您最多可以在一个键中存储5200000 个字符。您可以通过访问此站点来检查浏览器限制https://arty.name/localstorage.html
因此,要解决此问题,您必须检查您尝试存储在单个键中的字符数。
如果超出 localStorage 键的值大小,则必须将大小减小到适当的限制。
| 归档时间: |
|
| 查看次数: |
35023 次 |
| 最近记录: |