首先,一些有用的资源:
为了回答您的问题,桌面浏览器往往对每个域的初始最大localStorage配额为5MB。在某些情况下,可由用户调整:
> Opera:opera:config – > localStorage的域配额
> Firefox:about:config – > dom.storage.default_quota
在Chrome中,用户似乎没有办法调整此设置,虽然像Opera,localStorage数据可以使用开发人员工具直接在每个域中进行编辑。
当尝试将数据存储在localStorage中时,浏览器检查当前域是否有足够的剩余空间。
如是:
>存储数据,如果相同的键已经存在,则覆盖值。
如果不:
>不存储数据,并且不覆盖现有数据。
>抛出QUOTA_EXCEEDED_ERR异常。
在这种情况下,getItem(key)将返回成功存储的最后一个值(如果有)。
(Opera有点不同,它显示一个对话框,给用户选择增加当前域的存储空间。)
注意,sessionStorage和localStorage都是同一个Storage对象的实现,所以它们的行为是类似的,并且错误处理是相同的。