SharedWorker: SharedWorker() コンストラクター
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
SharedWorker() コンストラクターは、指定された URL でスクリプトを実行する SharedWorker オブジェクトを作成します。このスクリプトは同一オリジンポリシーに従わなければなりません。
メモ: ブラウザーメーカー間で、 data URL が同じ元であるかどうかについての見解の相違があります。 Firefox 10.0 以降では data URL を受け入れることができますが、他のすべてのブラウザーではその限りではありません。
構文
new SharedWorker(aURL)
new SharedWorker(aURL, name)
new SharedWorker(aURL, options)
引数
aURL-
文字列で、ワーカーが実行するスクリプトの URL を表します。これは同一オリジンポリシーに従わなければなりません。
name省略可-
ワーカーのスコープを表す
SharedWorkerGlobalScopeの識別名を指定する文字列で、同じ共有ワーカーのインスタンスの作成やデバッグに有用です。 options省略可-
オブジェクトのインスタンスを作成する際に設定することができる、オプションプロパティを格納したオブジェクト。利用できるプロパティは以下のとおりです。
type-
作成するワーカーの種類を指定する文字列です。この値には
classicまたはmoduleを指定することができます。指定しない場合、既定ではclassicが使用されます。 credentials-
ワーカーに使用する資格情報の種類を指定する文字列です。値は
omit、same-origin、includeのいずれかです。指定しなかった場合、または type がclassicの場合、既定ではomit(資格情報は必要なし) が使用されます。 name-
ワーカーのスコープを表す
SharedWorkerGlobalScopeの識別名を指定する文字列で、主にデバッグのために使用されます。 -
文字列で、どの
SameSiteクッキー がワーカーに利用できるかを示します。以下の 2 つの値のいずれかを取ることができます。
例外
SecurityErrorDOMException-
ドキュメントがワーカーの開始を許可されていない場合、例えば URL が無効な構文であったり、同一オリジンポリシーに違反していたり、
sameSiteCookiesの値が指定されたコンテキストで対応していなかった場合に発生します。 NetworkErrorDOMException-
ワーカースクリプトの MIME 型が正しくない場合に発生します。常に
text/javascriptであるべきです(歴史的な理由から他の JavaScript MIME タイプも受け入れられるかもしれません)。 SyntaxErrorDOMException-
aURLが解釈できない場合に発生します。
例
以下のコードでは、SharedWorker() コンストラクターを使用して SharedWorker オブジェクトを作成し、その後にそのオブジェクトを使用している様子を示しています。
const myWorker = new SharedWorker("worker.js");
myWorker.port.start();
first. => {
myWorker.port.postMessage([first.value, second.value]);
console.log("Message posted to worker");
};
second. => {
myWorker.port.postMessage([first.value, second.value]);
console.log("Message posted to worker");
};
myWorker.port. => {
result1.textContent = e.data;
console.log("Message received from worker");
};
完全な例は、基本的な共有ワーカーの例(共有ワーカーを実行)を参照してください。
仕様書
| Specification |
|---|
| HTML> # dom-sharedworker-dev> |
ブラウザーの互換性
Loading…
関連情報
- 所属先の
SharedWorkerインターフェイス。