Web ワーカーは個別の JavaScript ファイルなしで使用できますか?
Web ワーカーを作成するためのデフォルトのアプローチでは、Web ワーカーを個別の JavaScript ファイルに記述して呼び出します。
<code class="js">new Worker('longrunning.js')</code>
ただし、Closure Compiler を使用していて、個別のファイルにワーカーを分散することを避けたい場合は、別の解決策があります:
BLOB を使用したインライン ワーカー
HTTP5Rocks は、Blob() 関数を使用してインライン インライン ワーカーに革新的なメソッドを提供します。この手法を使用すると、外部ワーカー ファイルを必要とせずに、ワーカー スクリプトを動的に生成したり、自己完結型のページを作成したりできます。
<code class="js">var blob = new Blob([ document.querySelector('#worker1').textContent ], { type: "text/javascript" }); var worker = new Worker(window.URL.createObjectURL(blob));</code>
この例では、HTML スクリプト要素の textContent プロパティに id="worker1 " が取得され、適切な MIME タイプで Blob オブジェクトを構築するために使用されます。次に、Blob の createObjectURL() メソッドを使用して作成された URL を使用して、新しいワーカーが作成されます。この URL は BLOB に固有であり、別の JavaScript ファイルを使用せずにワーカーをロードして実行できます。
以上がWeb ワーカーは個別の JavaScript ファイルなしで実装できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。