BroadcastChannel: postMessage() method
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2022.
Note: This feature is available in Web Workers.
The postMessage() method of the BroadcastChannel interface sends a message,
which can be of any kind of Object,
to each listener in any browsing context with the same origin.
The message is transmitted as a message event
targeted at each BroadcastChannel bound to the channel.
Syntax
postMessage(message)
Parameters
message-
Data to be sent to the other window. The data is serialized using the structured clone algorithm. This means you can pass a broad variety of data objects safely to the destination window without having to serialize them yourself.
Note: Execution contexts that can message each other may not be in the same agent cluster, and therefore cannot share memory.
SharedArrayBufferobjects, or buffer views backed by one, cannot be posted across agent clusters. Trying to do so will generate amessageerrorevent containing aDataCloneErrorDOMExceptionon the receiving end.
Return value
None.
Exceptions
InvalidStateErrorDOMException-
Thrown if the
BroadcastChannelhas already been closed. DataCloneErrorDOMException-
Thrown if any part of the input data is not serializable.
Specifications
| Specification |
|---|
| HTML> # dom-broadcastchannel-postmessage-dev> |
Browser compatibility
Loading…
See also
BroadcastChannel, the interface it belongs to.