WebAssembly.runtimeError
WebAssembly.runtimeError
这是一项
实验技术
在使用此产品之前,请仔细检查浏览器兼容性表。
WebAssembly.RuntimeError()
构造函数创建一个新的WebAssembly RuntimeError
对象-时引发每当WebAssembly指定类型的陷阱。
语法
new WebAssembly.RuntimeError(message, fileName, lineNumber)
参数
message
可选,人类可读的错误描述。fileName
可选,包含导致异常的代码的文件的名称。lineNumber
可选,导致异常的代码的行号。
属性
在RuntimeError
构造函数中包含没有自己的独特性,但是,它会通过继承原型链中的某些属性。
WebAssembly.RuntimeError.prototype.constructor
指定创建实例原型的函数。WebAssembly.RuntimeError.prototype.message
错误信息。虽然ECMA-262规定URIError
应该提供自己的message
财产,在SpiderMonkey中,它继承Error.prototype.message
。WebAssembly.RuntimeError.prototype.name
错误名称。继承Error
。WebAssembly.RuntimeError.prototype.fileName
引发此错误的文件路径。继承Error
。WebAssembly.RuntimeError.prototype.lineNumber
引发此错误的文件中的行号。继承Error
。WebAssembly.RuntimeError.prototype.columnNumber
引发此错误的列号。继承Error
。WebAssembly.RuntimeError.prototype.stack
堆栈跟踪。继承Error
。
方法
该RuntimeError
构造不包含它自己的方法,但是,它会通过继承原型链的一些方法。
WebAssembly.RuntimeError.prototype.toSource()
返回可能评估相同错误的代码。继承Error
。WebAssembly.RuntimeError.prototype.toString()
返回表示指定Error
对象的字符串。继承自Error
。
示例
以下片段创建一个新RuntimeError
实例,并将其详细信息记录到控制台:
try {
throw new WebAssembly.RuntimeError('Hello', 'someFile', 10
} catch (e) {
console.log(e instanceof RuntimeError // true
console.log(e.message // "Hello"
console.log(e.name // "RuntimeError"
console.log(e.fileName // "someFile"
console.log(e.lineNumber // 10
console.log(e.columnNumber // 0
console.log(e.stack // returns the location where the code was run
}
规范
Specification | Status | Comment |
---|---|---|
Web Assembly JavaScript APIThe definition of 'WebAssembly constructors' in that specification. | Draft | Initial WebAssembly draft definition. |
ECMAScript Latest Draft (ECMA-262)The definition of 'NativeError' in that specification. | Living Standard | Definition of standard NativeError types. |
浏览器兼容性
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic Support | 57 | 16 | 522 | No | 44 | 11 |
Feature | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support | 57 | 57 | (Yes)1 | 522 | No | ? | 11 |