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

时间:2017-03-30 11:11:05

标签: javascript jquery local-storage

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

我正在使用本地存储来存储我的数据库中的一些查询,因此如果本地存储上存在特定项目,用户可以立即加载它们。如果没有那么,那是我在服务器中检索数据的时间。

1 个答案:

答案 0 :(得分:2)

尝试添加到localstorage时,如果空间不足,则会抛出此错误。在特定情况下,您可以使用此事件释放一些空间。

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/