我需要通过网络浏览器localStorage
在填充时拦截实例来保存大量数据。我搜索了很多,我能找到的唯一方法就是调用一个布尔方法来尝试创建新条目。我宁愿避免这种方法。
我想知道localStorage
JavaScript函数是否存在,以确定它是否已存在。
答案 0 :(得分:2)
不存在此类方法。测试存储容量的唯一方法是尝试添加到存储并捕获异常。有关localStorage的可用方法,请参阅the spec。
答案 1 :(得分:0)
通常用于防止此类拦截的方法是添加QUOTA_EXCEEDED_ERR
之类的检查
try {
localStorage.setItem('item', val);
} catch (e) {
if (e == QUOTA_EXCEEDED_ERR) {
alert('Quota exceeded!');
}
}