BroadcastChannel:postMessage() 方法
注意:此功能在 Web Workers 中可用。
postMessage() 方法是 BroadcastChannel 接口的一个方法,用于将任何类型的 Object 消息发送给具有相同 源 的任何 浏览上下文 中的每个侦听器。消息将作为 message 事件传输,该事件的目标是绑定到该通道的每个 BroadcastChannel。
语法
js
postMessage(message)
参数
message-
要发送到其他窗口的数据。数据使用 结构化克隆算法 进行序列化。这意味着您可以安全地将各种数据对象传递到目标窗口,而无需自行序列化它们。
注意: 可以相互发送消息的执行上下文可能不在同一个 代理集群 中,因此无法共享内存。
SharedArrayBuffer对象,或由其支持的缓冲区视图,无法跨代理集群进行发布。尝试这样做将在接收端生成一个包含DataCloneErrorDOMException的messageerror事件。
返回值
无。
异常
InvalidStateErrorDOMException-
如果
BroadcastChannel已关闭,则会抛出此异常。 DataCloneErrorDOMException-
如果输入数据的任何部分不可序列化,则会抛出此异常。
规范
| 规范 |
|---|
| HTML # dom-broadcastchannel-postmessage-dev |
浏览器兼容性
加载中…
另见
BroadcastChannel,它所属的接口。