【发布时间】:2013-08-16 16:20:39
【问题描述】:
我很困惑,当我创建一个新的 Error 对象时,我可以看到它的消息或名称,但我无法使用标准方式看到它的键列表。这是为什么呢?
> err = new Error("an error")
[Error: an error]
> err.message
'an error'
> err.name
'Error'
> Object.keys(err)
[]
> JSON.stringify(err)
'{}'
【问题讨论】:
-
尝试
Object.getOwnPropertyNames()而不是Object.keys()。它们可能是不可枚举的。 -
例如,
Object.getOwnPropertyDescriptor(err, 'stack')显示enumerable: false。
标签: javascript node.js