MessageEvent: ports プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.

portsMessageEvent インターフェイスの読み取り専用プロパティで、メッセージが(チャネルメッセージングや共有ワーカーにメッセージを送信する場合など、適切な場合に)送信されるチャネルに関連するポートを表す MessagePort オブジェクトの配列です。

MessagePort オブジェクトの配列です。

js
onconnect = (e) => {
  const port = e.ports[0];

  port.addEventListener("message", (e) => {
    const workerResult = `Result: ${e.data[0] * e.data[1]}`;
    port.postMessage(workerResult);
  });

  port.start(); // addEventListener を使用した場合は必要。 onmessage セッターからは暗黙に呼び出されます。
};

仕様書

Specification
HTML
# dom-messageevent-ports-dev

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
ports

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

関連情報

  • ExtendableMessageEvent — このインターフェイスに似ていますが、もっと柔軟性が必要なインターフェイスで使用されます。