【发布时间】:2014-04-20 02:10:55
【问题描述】:
我需要通过网络浏览器localStorage在填充时拦截实例来保存大量数据。我搜索了很多,我能找到的唯一方法是调用一个布尔方法来尝试创建新条目。我宁愿避免这种方法。
我想知道是否有一个localStorage JavaScript 函数可以知道它是否完整。
【问题讨论】:
标签: javascript function local-storage storage limit
我需要通过网络浏览器localStorage在填充时拦截实例来保存大量数据。我搜索了很多,我能找到的唯一方法是调用一个布尔方法来尝试创建新条目。我宁愿避免这种方法。
我想知道是否有一个localStorage JavaScript 函数可以知道它是否完整。
【问题讨论】:
标签: javascript function local-storage storage limit
不存在这样的方法。测试存储容量的唯一方法是尝试添加到存储并捕获异常。有关 localStorage 的可用方法,请参阅the spec。
【讨论】:
通常用来防止这种拦截的方法是添加一个检查QUOTA_EXCEEDED_ERRlike
try {
localStorage.setItem('item', val);
} catch (e) {
if (e == QUOTA_EXCEEDED_ERR) {
alert('Quota exceeded!');
}
}
【讨论】: