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
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.
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 |