MessagePort: start() メソッド

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.

メモ: この機能はウェブワーカー内で利用可能です。

start()MessagePort インターフェイスのメソッドで、ポート上のキューに置かれたメッセージの送信を開始します。このメソッドは、EventTarget.addEventListener を使用する場合のみ必要になります。MessagePort.message_event を使用する場合は暗黙に実行されます。

構文

js
start()

返値

なし。

引数

なし (undefined)。

次のコードブロックには、handleMessage ハンドラー関数があり、onmessage を使用して、メッセージがこのドキュメントに送り返された時に実行されます:

js
channel.port1.onmessage = handleMessage;
function handleMessage(e) {
  para.innerHTML = e.data;
}

これを行うもう一つの方法は、EventTarget.addEventListener を使用します。しかし、このメソッドが使用された場合、明示的に start() を呼び出してメッセージの送信を開始する必要があります:

js
channel.port1.addEventListener("message", handleMessage, false);
function handleMessage(e) {
  para.innerHTML = e.data;
  textInput.value = "";
}

channel.port1.start();

仕様書

Specification
HTML
# dom-messageport-start-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
start

Legend

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

Full support
Full support

関連情報