Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 内存满时删除最旧的chrome.storage.sync?_Javascript_Arrays_Google Chrome_Google Chrome Extension_Google Chrome Storage - Fatal编程技术网

Javascript 内存满时删除最旧的chrome.storage.sync?

Javascript 内存满时删除最旧的chrome.storage.sync?,javascript,arrays,google-chrome,google-chrome-extension,google-chrome-storage,Javascript,Arrays,Google Chrome,Google Chrome Extension,Google Chrome Storage,我有一个chrome扩展,它将唯一数据保存在chrome.storage.sync.set中。问题是chrome.storage内存不足时(102KB,最大存储项目数为512)。该怎么办 我想在数组中添加每个键,当我的chrome.storage完全开始使用数组擦除存储中的值时,但我不想占用太多内存。有更简单的方法吗?我想这取决于您的扩展。首先,内存中的数组可能不会停留很长时间。除非您的扩展是持久的,否则后台脚本将不会保持活动状态。它将根据需要进行加载和卸载。你能改用本地存储区吗?我不认为它有相

我有一个chrome扩展,它将唯一数据保存在
chrome.storage.sync.set
中。问题是
chrome.storage
内存不足时(102KB,最大存储项目数为512)。该怎么办


我想在数组中添加每个
,当我的
chrome.storage
完全开始使用数组擦除
存储
中的值时,但我不想占用太多内存。有更简单的方法吗?

我想这取决于您的扩展。首先,内存中的数组可能不会停留很长时间。除非您的扩展是持久的,否则后台脚本将不会保持活动状态。它将根据需要进行加载和卸载。你能改用本地存储区吗?我不认为它有相同的限制。假设键名很短,您的方法很好。您可以使用LZString库进一步压缩它。另一种方法是向每个条目添加一个包含Date.now()的时间戳字段@扎克,问题是关于chrome.storage.sync的配额限制,所以你的评论是不相关的。@wOxxOm正如我在评论中所说,如果扩展不是持久的,在数组中保存值可能不起作用。不确定这有什么关系。@扎克,听起来你好像认为数组将保留在后台脚本中。虽然这会让你的评论变得相关,但这种方法在现实生活中不起作用,因为在现实生活中,浏览器/计算机可以重新启动。这就是为什么我猜测作者将数组存储在存储器中的原因,这是数组方法唯一正确的实现,我猜这取决于您的扩展。首先,内存中的数组可能不会停留很长时间。除非您的扩展是持久的,否则后台脚本将不会保持活动状态。它将根据需要进行加载和卸载。你能改用本地存储区吗?我不认为它有相同的限制。假设键名很短,您的方法很好。您可以使用LZString库进一步压缩它。另一种方法是向每个条目添加一个包含Date.now()的时间戳字段@扎克,问题是关于chrome.storage.sync的配额限制,所以你的评论是不相关的。@wOxxOm正如我在评论中所说,如果扩展不是持久的,在数组中保存值可能不起作用。不确定这有什么关系。@扎克,听起来你好像认为数组将保留在后台脚本中。虽然这会让你的评论变得相关,但这种方法在现实生活中不起作用,因为在现实生活中,浏览器/计算机可以重新启动。这就是为什么我猜测作者将数组存储在存储器中,这是数组方法唯一正确的实现。