--- 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 ---
{{JSRef}}

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).

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 {{jsxref("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 {{jsxref("WebAssembly.compileStreaming()")}} verwenden wollen, da es effizienter als compile() arbeitet.

Spezifikationen

Spezifikation Status Kommentar
{{SpecName('WebAssembly JS', '#webassemblycompile', 'compile()')}} {{Spec2('WebAssembly JS')}} Initial draft definition.

Browserkompatibilität

{{Compat("javascript.builtins.WebAssembly.compile")}}

Siehe auch