[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/fr/docs/WebAssembly/Reference/JavaScript_interface/Instance [Back]  [Original]

WebAssembly.Instance() - WebAssembly | MDN

Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.

View in English Always switch to English

WebAssembly.Instance()

Baseline Large disponibilit

Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis octobre 2017.

Un objet WebAssembly.Instance reprsente un objet excutable, avec un tat, qui est une instance d'un module WebAssembly. Un objet Instance contient l'ensemble des fonctions WebAssembly exportes qui permettent d'invoquer du code WebAssembly depuis du code JavaScript.

Dans cet article

Constructeur

WebAssembly.Instance()

Cre un nouvel objet Instance.

Proprits des instances

Instance.prototype.exports

Renvoie un objet dont les proprits sont les fonctions exportes par l'instance de module WebAssembly afin qu'elles puissent tre rcupres et utilises en JavaScript. Cette proprit est uniquement accessible en lecture seule.

Exemples

Instancier un module WebAssembly de faon synchrone

Le constructeur WebAssembly.Instance() peut tre appel afin d'instancier un objet WebAssembly.Module de faon synchrone. Par exemple :

js
const importObject = {
  imports: {
    imported_func: function (arg) {
      console.log(arg);
    },
  },
};

fetch("simple.wasm")
  .then((response) => response.arrayBuffer())
  .then((bytes) => {
    let mod = new WebAssembly.Module(bytes);
    let instance = new WebAssembly.Instance(mod, importObject);
    instance.exports.exported_func();
  });

La faon prconise de rcuprer un objet Instance est asynchrone, par exemple en utilisant la fonction WebAssembly.instantiateStreaming() de cette faon :

js
const importObject = {
  imports: {
    imported_func: function (arg) {
      console.log(arg);
    },
  },
};

WebAssembly.instantiateStreaming(fetch("simple.wasm"), importObject).then(
  (obj) => obj.instance.exports.exported_func(),
);

Cet exemple illustre galement comment la proprit exports est utilise afin d'accder aux fonctions exportes.

Spcifications

Spcification
WebAssembly JavaScript Interface
# instances

Compatibilit des navigateurs

Voir aussi


Web Proxy Viewer  |  New URL  |  Original Page