【发布时间】:2013-10-18 15:52:58
【问题描述】:
我有一个 Error 的 Coffeescript 子类。以下 CoffeeScript 脚本
class MyError extends Error
constructor: (message, @cause) ->
super message
myError = new MyError 'This is the error message!'
console.log myError instanceof MyError
console.log myError instanceof Error
console.log "'#{myError.message}'"
console.log myError.message == ''
展示
true
true
''
true
在 Node.js v0.10.20 下。
为什么myError的message属性是空的?
【问题讨论】:
-
看看这个stackoverflow.com/a/10807905/1961149 指向问题github.com/jashkenas/coffee-script/issues/2111 和github.com/jashkenas/coffee-script/issues/1966 问题出在Error 构造函数的返回值上。
-
谢谢。在发布这个问题之前,我已经看到了这些链接。在阅读了所有这些问题和 cmets 并尝试了
instanceof示例之后(据我所知,这些示例都运行良好),我认为子类化没有问题。 -
知道
util.isError(myError)在Node.js下返回false,我的问题的答案是"An argument against subclassingError"。
标签: node.js coffeescript