SharedStorage: set() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The set()
method of the SharedStorage
interface either stores a new key-value pair in the current origin's shared storage or updates an existing one.
Syntax
set(key, value)
set(key, value, options)
Parameters
key
-
A string representing the key in the key-value pair that you want to add or update.
value
-
A string representing the value you want to add or update.
options
Optional-
An options object containing the following properties:
ignoreIfPresent
-
A boolean value. The value
true
causes the set operation to abort if a key-value pair with the specifiedkey
already exists. The default valuefalse
causes the set operation to overwrite the previous value.
Return value
A Promise
that fulfills with undefined
.
Exceptions
- The
Promise
rejects with aTypeError
if:- The created entry was not successfully stored in the database due to shared storage not being available (for example it is disabled using a browser setting).
key
and/orvalue
exceed the browser-defined maximum length.- The calling site does not have the Shared Storage API included in a successful privacy sandbox enrollment process.
- In the case of
WorkletSharedStorage
, thePromise
rejects with aTypeError
if the worklet module has not been added withSharedStorageWorklet.addModule()
.
Note:
In the case of WindowSharedStorage
, if the set()
operation doesn't successfully write to the database for a reason other than shared storage not being available, no error is thrown — the operation still fulfills with undefined
.
Examples
window.sharedStorage
.set("ab-testing-group", "0", {
ignoreIfPresent: true,
})
.then(console.log("Set operation completed"));
Specifications
Specification |
---|
Shared Storage API # dom-sharedstorage-set |
Browser compatibility
BCD tables only load in the browser