WebAssembly.Exception.prototype.is()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since May 2022.
Exception
对象的 is()
原型方法可以用于测试 Exception
是否匹配一个指定的标签。
在将标签传递给 Exception.prototype.getArg()
获取传递值之前,可以用该方法测试标签的正确性。可以用在 JavaScript 中创建的标签或者在 WebAssembly 中创建并导出到 JavaScript 中的标签。
备注: 数据类型顺序相同的标签是不够的——必须和异常创建时用的标签具有相同的身份(同一个标签)。
语法
js
is(tag)
参数
tag
-
用来验证异常的类型的
WebAssembly.Tag
。
返回值
如果指定的标签匹配异常,则返回布尔值 true
,否则返回 false
。
示例
下面的代码展示如何使用 is()
验证一个标签匹配一个 Exception
。
js
// 创建标签,并用它创建异常
const tag1 = new WebAssembly.Tag({ parameters: ["i32", "f64"] });
const exception1 = new WebAssembly.Exception(tag1, [42, 42.3]);
// 验证“tag1”匹配这个异常
console.log(`Tag1: ${exception1.is(tag1)}`);
// 日志输出:
// Tag1: true
我们也可以展示这个异常不匹配另一个标签,即使该标签是用相同的参数创建的。
js
// 创建一个新的标签(用一样的参数)并验证它不匹配该异常
const tag2 = new WebAssembly.Tag({ parameters: ["i32", "f64"] });
console.log(`Tag2: ${exception1.is(tag2)}`);
// 日志输出:
// Tag2: false
规范
Specification |
---|
WebAssembly JavaScript Interface: Exception Handling # dom-exception-is |