共享存储:set() 方法
set()
方法是 SharedStorage
接口的方法,它可以将新的键值对存储在当前来源的共享存储中,或更新现有的键值对。
语法
js
set(key, value)
set(key, value, options)
参数
key
-
一个字符串,表示要添加或更新的键值对中的键。
value
-
一个字符串,表示要添加或更新的值。
options
可选-
一个包含以下属性的选项对象
ignoreIfPresent
-
布尔值。 值
true
表示如果存在指定key
的键值对,则 set 操作将中止。 默认值false
表示 set 操作将覆盖之前的值。
返回值
一个 Promise
,它将在完成时返回 undefined
。
异常
- 如果以下情况发生,则
Promise
将会以TypeError
拒绝:- 由于共享存储不可用(例如,它通过浏览器设置禁用),创建的条目未成功存储在数据库中。
key
和/或value
超过了浏览器定义的最大长度。- 调用站点未在成功的 隐私沙箱注册流程 中包含共享存储 API。
- 在
WorkletSharedStorage
的情况下,如果工作线程模块未通过SharedStorageWorklet.addModule()
添加,则Promise
将会以TypeError
拒绝。
注意: 在 WindowSharedStorage
的情况下,如果 set()
操作由于共享存储不可用以外的原因未成功写入数据库,则不会抛出任何错误 - 操作仍然会以 undefined
完成。
示例
js
window.sharedStorage
.set("ab-testing-group", "0", {
ignoreIfPresent: true,
})
.then(console.log("Set operation completed"));
规范
规范 |
---|
共享存储 API # dom-sharedstorage-set |
浏览器兼容性
BCD 表格仅在浏览器中加载