WebAssembly.Instance.prototype.exports

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2017.

Die exports-Eigenschaft des WebAssembly.Instance-Objektprototyps ist schreibgeschützt und gibt ein Objekt zurück, das alle Funktionen enthält, die aus der WebAssembly-Modulinstanz exportiert wurden. Dadurch können sie in JavaScript angesprochen und verwendet werden.

Beispiele

Verwendung von exports

Nachdem einige WebAssembly-Bytecodes mit fetch abgerufen wurden, kompilieren und instanziieren wir das Modul mit der Funktion WebAssembly.instantiateStreaming(), wobei wir währenddessen eine JavaScript-Funktion in das WebAssembly-Modul importieren. Wir rufen dann eine exportierte WebAssembly-Funktion auf, die von der Instance exportiert wird.

js
const importObject = { my_namespace: { imported_func(arg) { console.log(arg); }, }, }; WebAssembly.instantiateStreaming(fetch("simple.wasm"), importObject).then( (obj) => obj.instance.exports.exported_func(), ); 

Hinweis: Dieses Beispiel finden Sie auch als instantiate-streaming.html auf GitHub (sehen Sie es sich auch live an).

Spezifikationen

Specification
WebAssembly JavaScript Interface
# dom-instance-exports

Browser-Kompatibilität

Siehe auch