gpt4 book ai didi

javascript - 在 localStorage 上捕获 QUOTA_EXCEEDED_ERR

转载 作者:太空狗 更新时间:2023-10-29 15:45:58 26 4
gpt4 key购买 nike

我正在使用 html5 的 localStorage API。

我想捕获 QUOTA_EXCEEDED_ERR,这样我就可以向用户显示一条消息,例如“内存已满。无法保存。也许可以删除一些项目?”

我将使用的代码如下

function save() {
try {
localStorage.setItem(key, name);
} catch (e) {
if (e.name === 'QUOTA_EXCEEDED_ERR') {
alert("Memory is full. Cannot save. Maybe delete a few items?");
} else {
alert("Something went wrong? Try again later?")
}
}
}

我想问你,这样可以吗?这适用于所有浏览器吗?无论如何,工作正常还是中断?

当然我也在测试它,但我想我还是应该问一下,因为也许我遗漏了什么。

最佳答案

e.name 表示超出配额的错误在每个浏览器中不一定总是 "QUOTA_EXCEEDED_ERR"

在某些版本的 FF 中可能是 "NS_ERROR_DOM_QUOTA_REACHED" http://chrisberkhout.com/blog/localstorage-errors/

可能是 "QuotaExceededError""W3CException_DOM_QUOTA_EXCEEDED_ERR" 取决于 IE 浏览器版本/模式 http://msdn.microsoft.com/en-us/library/ie/cc197050(v=vs.85).aspx

但是,您仍然捕获错误。所以最坏的情况是用户会得到“出了什么问题?”警报与“内存已满”警报。

关于javascript - 在 localStorage 上捕获 QUOTA_EXCEEDED_ERR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19574966/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com