Heim >Web-Frontend >js-Tutorial >Können Web Worker ohne separate JavaScript-Dateien implementiert werden?
Können Web Worker ohne separate JavaScript-Dateien verwendet werden?
Der Standardansatz zum Erstellen von Web Workern besteht darin, sie in separate JavaScript-Dateien zu schreiben und aufzurufen Sie wie folgt:
<code class="js">new Worker('longrunning.js')</code>
Für diejenigen, die jedoch den Closure-Compiler verwenden und die Verteilung von Workern in verschiedenen Dateien vermeiden möchten, gibt es eine alternative Lösung:
Inline-Worker mit BLOB
HTTP5Rocks bietet eine innovative Methode für Inline-Inline-Worker mithilfe der Blob()-Funktion. Mit dieser Technik können Sie Ihr Worker-Skript dynamisch generieren oder eigenständige Seiten erstellen, ohne dass externe Worker-Dateien erforderlich sind.
<code class="js">var blob = new Blob([ document.querySelector('#worker1').textContent ], { type: "text/javascript" }); var worker = new Worker(window.URL.createObjectURL(blob));</code>
In diesem Beispiel ist die textContent-Eigenschaft des HTML-Skriptelements mit id="worker1 " wird abgerufen und zum Erstellen eines Blob-Objekts mit dem entsprechenden MIME-Typ verwendet. Anschließend wird ein neuer Worker mit einer URL erstellt, die mit der Methode createObjectURL() des Blobs erstellt wurde. Diese URL ist für den Blob eindeutig und ermöglicht das Laden und Ausführen des Workers ohne separate JavaScript-Datei.
Das obige ist der detaillierte Inhalt vonKönnen Web Worker ohne separate JavaScript-Dateien implementiert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!