--- title: WebAssembly.compile() slug: Web/JavaScript/Reference/Global_Objects/WebAssembly/compile tags: - API - JavaScript - Method - Object - Reference - WebAssembly - compile translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/compile ---
Die WebAssembly.compile() Funktion kompiliert ein {{jsxref("WebAssembly.Module")}} aus WebAssembly Binärcode. Hilfreich ist diese Funktion, um ein Modul zu kompilieren, bevor es instanziiert werden kann (Andernfalls sollte die {{jsxref("WebAssembly.instantiate()")}} Funktion verwendet werden).
Promise<WebAssembly.Module> WebAssembly.compile(bufferSource);
Ein Promise, das sich in ein {{jsxref("WebAssembly.Module")}} kompiliertes Objekt auflöst.
bufferSource kein typisiertes Array ist, wird ein {{jsxref("TypeError")}} geworfen.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 {{jsxref("WebAssembly.compileStreaming()")}} verwenden wollen, da es effizienter als compile() arbeitet.
| Spezifikation | Status | Kommentar |
|---|---|---|
| {{SpecName('WebAssembly JS', '#webassemblycompile', 'compile()')}} | {{Spec2('WebAssembly JS')}} | Initial draft definition. |
{{Compat("javascript.builtins.WebAssembly.compile")}}