gpt4 book ai didi

javascript - 本地存储限制 - 我如何知道我是否已达到该限制?

转载 作者:行者123 更新时间:2023-11-28 07:49:20 25 4
gpt4 key购买 nike

我有一个应用程序,我想在其中跨窗口共享数据。数据几乎总是小于 5MB,但在某些情况下可能会达到 7MB 或更多。为了跨窗口共享这些数据,我需要将数据分块写入本地存储,收集数据后,将其替换为下一个要收集的 block 。

我的问题是。我如何用javascript计算这个?我不仅需要计算数据的字节大小,而且还需要计算我将给出数据“数据包”的任何头,因此当接收到它时,可以将其连接到正确的(不完整的)“数据包”其他 window 。在本地存储中我如何弄清楚,

A.有多少数据可用?

B.我的数据会占用多少空间?

最佳答案

规范中没有标准尺寸。 This StackOverflow answer显示两个引号,大多数浏览器的默认值似乎是 5mb,Internet Explorer 的默认值是 10mb。第二句话很重要,因为它说每个浏览器都赋予用户自定义此限制的能力。无法检测您是否接近限制。

根据W3C spec如果超出浏览器的配额,setItem 方法将抛出 QuotaExceededError

关于存储数据的大小,您存储的是字符串。当然,您可以达到 5mb 或 10mb,但这是一个巨大的数据量。要了解详情,请查看一个 5mb 大的文本文件。尽管这可能无法准确描述您可以使用 localStorage 存储多少文本,但它仍然会很大!无论出于何种目的,在实现使用 setItem 的代码时,请务必检查是否引发异常。

关于javascript - 本地存储限制 - 我如何知道我是否已达到该限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27044607/

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