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 |
浏览器兼容性
加载中…