StorageArea

StorageArea 接口由 chrome.storage API 使用。

方法

clear()

Promise
chrome.storage.StorageArea.clear(
  callback?: function,
)
: Promise<void>

从存储空间中移除所有内容。

参数

  • callback

    函数 可选

    callback 参数的格式如下:

    () => void

返回

  • Promise<void>

    Chrome 95 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

get()

Promise
chrome.storage.StorageArea.get(
  keys?: string | string[] | object,
  callback?: function,
)
: Promise<object>

从存储空间中获取一项或多项内容。

参数

  • 密钥

    字符串 | 字符串数组 | 对象 可选

    要获取的单个键、要获取的键列表,或指定默认值的字典(请参阅对象的说明)。空列表或空对象将返回空结果对象。传入 null 以获取存储空间的全部内容。

  • callback

    函数 可选

    callback 参数的格式如下:

    (items: object) => void

    • 项目

      对象

      包含键值对映射中各项的对象。

返回

  • Promise<object>

    Chrome 95 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

getBytesInUse()

Promise
chrome.storage.StorageArea.getBytesInUse(
  keys?: string | string[],
  callback?: function,
)
: Promise<number>

获取一个或多个内容使用的空间量(以字节为单位)。

参数

  • 密钥

    字符串 | 字符串数组 可选

    要获取总使用量的单个键或键列表。如果列表为空,则返回 0。传入 null 可获取所有存储空间的总用量。

  • callback

    函数 可选

    callback 参数的格式如下:

    (bytesInUse: number) => void

    • bytesInUse

      数值

      存储空间中正在使用的空间量(以字节为单位)。

返回

  • Promise<number>

    Chrome 95 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

getKeys()

Promise Chrome 130 及更高版本
chrome.storage.StorageArea.getKeys(
  callback?: function,
)
: Promise<string[]>

从存储空间获取所有键。

参数

  • callback

    函数 可选

    callback 参数的格式如下:

    (keys: string[]) => void

    • 密钥

      字符串[]

      包含从存储空间读取的键的数组。

返回

  • Promise<string[]>

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

remove()

Promise
chrome.storage.StorageArea.remove(
  keys: string | string[],
  callback?: function,
)
: Promise<void>

从存储空间中移除一项或多项内容。

参数

  • 密钥

    字符串 | 字符串数组

    要移除的商品的单个键或键列表。

  • callback

    函数 可选

    callback 参数的格式如下:

    () => void

返回

  • Promise<void>

    Chrome 95 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

set()

Promise
chrome.storage.StorageArea.set(
  items: object,
  callback?: function,
)
: Promise<void>

设置多个项。

参数

  • 项目

    对象

    一个对象,用于提供要更新存储空间的每个键值对。存储空间中的任何其他键值对都不会受到影响。

    数字等原始值将按预期序列化。具有 typeof "object""function" 的值通常会序列化为 {},但 Array(按预期序列化)、DateRegex 除外(使用其 String 表示形式进行序列化)。

  • callback

    函数 可选

    callback 参数的格式如下:

    () => void

返回

  • Promise<void>

    Chrome 95 及更高版本

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

setAccessLevel()

Promise Chrome 102 及更高版本
chrome.storage.StorageArea.setAccessLevel(
  accessOptions: object,
  callback?: function,
)
: Promise<void>

设置存储区域的所需访问权限级别。默认情况下,session 存储空间仅限受信任的上下文(扩展程序页面和服务工作器)访问,而 managedlocalsync 存储空间允许受信任和不受信任的上下文访问。

参数

  • accessOptions

    对象

    • accessLevel

      存储区的访问权限级别。

  • callback

    函数 可选

    callback 参数的格式如下:

    () => void

返回

  • Promise<void>

    仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。

事件

onChanged

Chrome 73 及更高版本
chrome.storage.StorageArea.onChanged.addListener(
  callback: function,
)

当一个或多个项发生更改时触发。

参数

  • callback

    函数

    callback 参数的格式如下:

    (changes: object) => void

    • 更改

      对象