Tag: 自定义错误

如何在NodeJS中为自定义错误类获取正确的回溯?

我对于在JavaScript中创build自定义Error类的“正确”方式的理解如下所示: function MyError(message) { this.name = "MyError"; this.message = message || "Default Message"; } MyError.prototype = new Error(); MyError.prototype.constructor = MyError; (代码片段从https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error中唤醒。) 使用NodeJS,如果我尝试检查这种types的错误,如: var err = new MyError("whoops"); assert.ifError(err); …回溯将显示我在编译时创build的Error对象的上下文,作为MyError的原型,而不是我用“new MyError()”创build的MyError对象。 有什么方法可以得到正确的回溯数据,而不是原型?