EvalError - JavaScript 编辑
本对象代表了一个关于 eval 函数的错误.此异常不再会被JavaScript抛出,但是EvalError对象仍然保持兼容性.
语法
new EvalError([message[, fileName[, lineNumber]]])
参数
- message
- 可选参数.人类可阅读的关于错误的描述.
- fileName(非标准)
- 可选参数.代码中导致异常的文件的文件名.
- lineNumber(非标准)
- 可选参数.代码中导致异常的代码的行号.
属性
- prototype
- 允许向EvalError对象中添加自定义属性.
方法
全局的EvalError对象本身不包含任何方法, 然而它通过原型链继承了一些方法.
EvalError 实例
属性
EvalError.prototype.constructor
- 指定创建实例原型的函数.
EvalError.prototype.message
- 错误信息. 从 ECMA-262 开始
EvalError
提供message
(继承自Error.prototype.message
)属性, 详见 SpiderMonkey. EvalError.prototype.name
- 错误名称.继承自
Error
. EvalError.prototype.fileName
- 引发错误的文件路径. 继承自
Error
. EvalError.prototype.lineNumber
- 引发错误所在行.继承自
Error
. EvalError.prototype.columnNumber
- 引发错误所在的列. 继承自
Error
. EvalError.prototype.stack
- 堆栈.继承自
Error
.
方法
虽然 EvalError
自己的属性方法较少, 但是通过原型链继承了很多有用的方法.
例子
EvalError
不在当前ECMAScript规范中使用,因此不会被运行时抛出. 但是对象本身仍然与规范的早期版本向后兼容.
创建 EvalError
try {
throw new EvalError('Hello', 'someFile.js', 10);
} catch (e) {
console.log(e instanceof EvalError); // true
console.log(e.message); // "Hello"
console.log(e.name); // "EvalError"
console.log(e.fileName); // "someFile.js"
console.log(e.lineNumber); // 10
console.log(e.columnNumber); // 0
console.log(e.stack); // "@Scratchpad/2:2:9\n"
}
规范
规范 | 状态 | 注释 |
---|---|---|
ECMAScript 3rd Edition (ECMA-262) | Standard | 初始定义. |
ECMAScript 5.1 (ECMA-262) EvalError | Standard | 本规范中未使用. 为了保持向后兼容. |
ECMAScript 2015 (6th Edition, ECMA-262) EvalError | Standard | 本规范中未使用. 为了保持向后兼容. |
ECMAScript (ECMA-262) EvalError | Living Standard |
浏览器兼容性
BCD tables only load in the browser
该页面中的兼容性表格由结构化的数据生成。如果有意向贡献数据,请查看 https://github.com/mdn/browser-compat-data 并发起 pull request。
相关链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论