javascript - LocalStorage - 检测本地存储是否已满

标签 javascript jquery local-storage

有没有办法检测本地存储是否已达到其存储的最大值? 或者至少是一条错误消息,告诉我不能再存储,因为我已经达到了最大大小?我想捕获这个,这样我就可以删除本地存储中最旧的项目并插入新项目。

我正在使用本地存储来存储我的数据库中的一些查询,这样如果该特定项目存在于本地存储中,用户将能够立即加载它们。如果不是,那是我在服务器中检索数据的时间。

最佳答案

尝试添加到本地存储时,如果没有足够的空间,将抛出此错误。在您的特定场景中,您可以使用此事件来释放一些空间。

try {
  localStorage.setItem("name", "Hello World!"); //saves to the database, "key", "value"
} catch (e) {
  if (e == QUOTA_EXCEEDED_ERR) {
    alert('Quota exceeded!'); //data wasn't successfully saved due to quota exceed so throw an error
  }
}

归功于 - http://chrisberkhout.com/blog/localstorage-errors/

关于javascript - LocalStorage - 检测本地存储是否已满,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43116179/

相关文章:

javascript - 可以在文档外的元素上使用 jQuery 吗?

javascript - 传递 '&' 和空格 javascript

javascript - 选择的 Jquery 在 Rails 4 应用程序上无法正常工作

javascript - HTML5 localStorage JSON 改进

json - HTML5 localstorage 添加双引号

javascript - 如果在头部使用关键 CSS,将样式表放在结束 body 标记之前是否有效?

javascript - 将 jQuery inArray 与 JavaScript 对象数组结合使用

javascript - 记录点击事件和目标

sql - 将 SQLite SQL 文件导入 WEB SQL 数据库的最简单方法是什么

javascript - Typescript async/await 和 angular $q 服务