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.Table.prototype.get()

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.

La méthode get() du prototype de WebAssembly.Table() permet de récupérer l'élément stocké à un index donné.

Syntaxe

js
get(index)

Paramètres

index

L'index de la référence de fonction qu'on souhaite récupérer.

Valeur de retour

Selon le type d'élément du tableau, cela peut être une référence de fonction — il s'agit d'une fonction WebAssembly exportée, d'une enveloppe JavaScript pour une fonction Wasm sous-jacente, ou d'une référence d'hôte.

Exceptions

Si index est supérieur ou égal à Table.prototype.length, la méthode lèvera une exception RangeError.

Exemples

Utiliser la méthode get()

L'exemple suivant (voir table.html (angl.) sur GitHub, et le voir en direct (angl.) également) compile et instancie le code binaire « table.wasm » chargé à l'aide de la méthode WebAssembly.instantiateStreaming(). Il récupère ensuite les références stockées dans le tableau exporté.

js
WebAssembly.instantiateStreaming(fetch("table.wasm")).then((obj) => {
  const tbl = obj.instance.exports.tbl;
  console.log(tbl.get(0)()); // 13
  console.log(tbl.get(1)()); // 42
});

Remarquez qu'il faut inclure un second opérateur d'appel de fonction à la fin de l'accesseur pour réellement obtenir la valeur stockée dans la référence (par exemple, get(0)() plutôt que get(0)) — il s'agit d'une fonction et non d'une simple valeur.

Spécifications

Spécification
WebAssembly JavaScript Interface
# dom-table-get

Compatibilité des navigateurs

Voir aussi