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

Abhängig vom Elementtyp der Tabelle kann es sich um eine Funktionsreferenz handeln — dies ist eine exportierte WebAssembly-Funktion, ein JavaScript-Wrapper für eine zugrunde liegende Wasm-Funktion, oder es kann sich um eine Hostreferenz handeln.

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 live ansehen) kompiliert und instanziiert den geladenen table.wasm Bytecode unter Verwendung der WebAssembly.instantiateStreaming() Methode. Anschließend werden die in der exportierten Tabelle gespeicherten Referenzen abgerufen.

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, wie Sie einen zweiten Funktionsaufrufoperator am Ende des Accessors einschließen müssen, um den tatsächlich im Inneren der Referenz 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

Siehe auch