Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

WebAssembly.Instance.prototype.exports

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Oktober 2017 browserübergreifend verfügbar.

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

Spezifikation
WebAssembly JavaScript Interface
# dom-instance-exports

Browser-Kompatibilität

Siehe auch