WebAssembly.Table.prototype.get()

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 get() Prototyp-Methode des WebAssembly.Table()-Objekts ruft das Element ab, das an einem bestimmten Index gespeichert ist.

Syntax

js
get(index)

Parameter

index

Der Index des Elements, das Sie abrufen möchten.

Rückgabewert

Je nach Elementtyp der Tabelle kann es sich um einen Funktionsverweis handeln — dies ist eine exportierte WebAssembly-Funktion, ein JavaScript-Wrapper für eine zugrunde liegende Wasm-Funktion oder ein Host-Verweis.

Ausnahmen

Wenn der index größer oder gleich Table.prototype.length ist, wird ein RangeError ausgelöst.

Beispiele

Verwendung von get

Das folgende Beispiel (siehe table.html auf GitHub, und sehen Sie es live) kompiliert und instanziiert den geladenen table.wasm-Bytecode mithilfe der Methode WebAssembly.instantiateStreaming(). Anschließend werden die Referenzen abgerufen, die in der exportierten Tabelle gespeichert sind.

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
});

Beachten Sie, dass Sie am Ende des Accessors einen zweiten Funktionsaufrufsoperator einschließen müssen, um den tatsächlich im Verweis gespeicherten Wert abzurufen (z. B. get(0)() statt get(0)) — es handelt sich um eine Funktion und nicht um einen einfachen Wert.

Spezifikationen

Specification
WebAssembly JavaScript Interface
# dom-table-get

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch