WebAssembly.Exception 构造函数

**WebAssembly.Exception()** 构造函数用于创建新的 WebAssembly.Exception

构造函数接受一个 Tag 参数和一个包含数据字段的 payload 数组。每个 payload 元素的数据类型必须与 Tag 中指定的对应数据类型匹配。

构造函数还可以接收一个 options 对象。options.traceStack 属性可以设置为 true(默认情况下为 false),表示 Wasm 堆栈跟踪可能附加到异常的 stack 属性。

语法

js
new Exception(tag, payload)
new Exception(tag, payload, options)

参数

tag

一个 WebAssembly.Tag,定义了 payload 中每个值预期的 数据类型。

payload

一个包含一个或多个数据字段的数组,构成异常的 payload。元素必须与 tag 中对应元素的数据类型匹配。如果 payload 中的数据字段数量及其类型不匹配,则会抛出一个 TypeError 异常。

options 可选 非标准

一个包含以下可选字段的对象

traceStack 可选 非标准

如果 Exception 可能在其 stack 属性中附加堆栈跟踪,则为 true,否则为 false。默认情况下为 false(如果未提供 optionsoptions.traceStack)。

异常

TypeError

payloadtag 序列没有相同数量的元素,或元素的类型不匹配。

示例

此示例展示了使用简单标签创建异常的过程。

js
// Create tag and use it to create an exception
const tag = new WebAssembly.Tag({ parameters: ["i32", "f32"] });
const exception = new WebAssembly.Exception(tag, [42, 42.3]);

stack 示例 展示了使用 options 参数创建异常的过程。

规范

规范
WebAssembly JavaScript 接口:异常处理
# dom-exception-exception

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅