Die WebAssembly.compile() Funktion kompiliert ein WebAssembly.Module aus WebAssembly Binärcode. Hilfreich ist diese Funktion, um ein Modul zu kompilieren, bevor es instanziiert werden kann (Andernfalls sollte die WebAssembly.instantiate() Funktion verwendet werden).

Syntax

Promise<WebAssembly.Module> WebAssembly.compile(bufferSource);

Parameter

bufferSource
Ein typisiertes Array oder ArrayBuffer, das den Binärcode des zu kompilierenden .wasm Moduls enthält.

Rückgabewert

Ein Promise, das sich in ein WebAssembly.Module kompiliertes Objekt auflöst.

Fehlerbehandlung

Beispiele

Das folgende Beispiel kompiliert den geladenen simple.wasm Bytecode unter Verwendung der  compile() Funktion und sendet ihn an einen Web Worker mittels postMessage().

var worker = new Worker("wasm_worker.js");

fetch('simple.wasm').then(response =>
  response.arrayBuffer()
).then(bytes =>
  WebAssembly.compile(bytes)
).then(mod =>
  worker.postMessage(mod)
);

Hinweis: Du wirst wahrscheinlich in den meisten Fällen WebAssembly.compileStreaming() verwenden wollen, da es effizienter als compile() arbeitet.

Spezifikationen

Spezifikation Status Kommentar
WebAssembly JavaScript Interface
Die Definition von 'compile()' in dieser Spezifikation.
Arbeitsentwurf Initial draft definition.

Browserkompatibilität

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid WebviewChrome für AndroidEdge MobileFirefox für AndroidOpera für AndroidSafari auf iOSSamsung InternetNode.js
Grundlegende UnterstützungChrome Vollständige Unterstützung 57Edge Vollständige Unterstützung 16Firefox Vollständige Unterstützung 52
Hinweise
Vollständige Unterstützung 52
Hinweise
Hinweise Disabled in the Firefox 52 Extended Support Release (ESR).
IE Keine Unterstützung NeinOpera Vollständige Unterstützung 44Safari Vollständige Unterstützung 11WebView Android Vollständige Unterstützung 57Chrome Android Vollständige Unterstützung 57Edge Mobile Vollständige Unterstützung Ja
Deaktiviert
Vollständige Unterstützung Ja
Deaktiviert
Deaktiviert This feature is behind the Experimental JavaScript Features preference.
Firefox Android Vollständige Unterstützung 52
Hinweise
Vollständige Unterstützung 52
Hinweise
Hinweise Disabled in the Firefox 52 Extended Support Release (ESR).
Opera Android Vollständige Unterstützung 44Safari iOS Vollständige Unterstützung 11Samsung Internet Android Vollständige Unterstützung 7.0nodejs Vollständige Unterstützung 8.0.0

Legende

Vollständige Unterstützung  
Vollständige Unterstützung
Keine Unterstützung  
Keine Unterstützung
Siehe Implementierungshinweise.
Siehe Implementierungshinweise.
Benutzer muss dieses Feature explizit aktivieren.
Benutzer muss dieses Feature explizit aktivieren.

Siehe auch

Schlagwörter des Dokuments und Mitwirkende

Mitwirkende an dieser Seite: mdnwebdocs-bot, vssn
Zuletzt aktualisiert von: mdnwebdocs-bot,