我知道您可以像这样向构造函数传递消息:
err = new Error('This is an error');
但是否有更多参数可以处理,例如错误名称、错误代码等...?
我也可以这样设置它们:
err.name = 'missingField';
err.code = 99;
但为了简洁起见,如果构造函数可以接受它们,我想将它们传递给它们。
我可以包装函数,但只在需要时才想这样做。
构造函数或文档的代码在哪里?我搜索了网络、nodejs.org 站点和 github,但没有找到它。
最佳答案
您在 node.js 中使用的 Error
类不是特定于 Node 的类。它来自 JavaScript。
作为MDN说明,Error
构造函数的语法如下:
new Error([message[, fileName[, lineNumber]]])
fileName
和 lineNumber
不是标准功能。
要合并自定义属性,您可以手动将其添加到 Error
类的实例中,或者创建您的自定义错误,如下所示:
// Create a new object, that prototypally inherits from the Error constructor.
function MyError(message, code) {
this.name = 'MyError';
this.message = message || 'Default Message';
this.code = code;
}
MyError.prototype = Object.create(Error.prototype);
MyError.prototype.constructor = MyError;
关于node.js - nodejs 使用的 Error 构造函数的参数是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28399339/