WebAssembly.Table.prototype.get()

Baseline 已廣泛支援

此功能已非常成熟,可在多種裝置和瀏覽器版本上使用。自 2017 年 10 月以來,它已在各大瀏覽器中可用。

get() 原型方法是 WebAssembly.Table() 物件用於檢索儲存在給定索引處的元素。

語法

js
get(index)

引數

index

您想要檢索的元素的索引。

返回值

根據 Table 的元素型別,它可以是函式引用——這是 匯出的 WebAssembly 函式,是對底層 Wasm 函式的 JavaScript 包裝器,也可以是宿主引用。

異常

如果 index 大於或等於 Table.prototype.length,則會丟擲 RangeError

示例

使用 get

以下示例(請參閱 GitHub 上的 table.html,以及 即時檢視)使用 WebAssembly.instantiateStreaming() 方法編譯並例項化載入的 table.wasm 位元組碼。然後檢索儲存在匯出的表中的引用。

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

請注意,您需要在訪問器末尾包含第二個函式呼叫運算子才能實際檢索儲存在引用中的值(例如,get(0)() 而不是 get(0))——因為它是一個函式而不是一個簡單值。

規範

規範
WebAssembly JavaScript 介面
# dom-table-get

瀏覽器相容性

另見