WebAssembly.Table.prototype.grow()
grow()
是 WebAssembly.Table
对象的原型方法,用于通过指定数量的元素来增加 Table
实例的大小,这些元素将使用提供的值填充。
语法
js
grow(delta)
grow(delta, value)
参数
返回值
表格的先前长度。
异常
RangeError
-
在以下情况之一中抛出
- 如果当前大小加上
delta
超过了 Table 实例的最大大小容量。 - 如果客户端没有足够的内存来进行分配。
- 如果当前大小加上
TypeError
-
如果
value
不是表格元素类型的值,则抛出。
示例
使用 grow
以下示例创建了一个新的 WebAssembly Table 实例,初始大小为 2,最大大小为 10
js
const table = new WebAssembly.Table({
element: "anyfunc",
initial: 2,
maximum: 10,
});
使用 Table.grow()
将表格增长 1 个元素
js
console.log(table.length); // 2
table.grow(1);
console.log(table.length); // 3
使用带有值的 grow
以下示例创建了一个新的 WebAssembly Table
实例,初始大小为 0,最大大小为 4,并使用一个对象填充它
js
const myObject = { hello: "world" };
const table = new WebAssembly.Table({
element: "externref",
initial: 0,
maximum: 4,
});
使用 WebAssembly.grow()
将表格增长 4 个单位,并使用一个值填充它
js
table.grow(4, myObject);
console.log(myObject === table.get(2)); // true
规范
规范 |
---|
WebAssembly JavaScript 接口 # dom-table-grow |
浏览器兼容性
BCD 表格仅在浏览器中加载