Extended Errors do not have message or stack trace
问题 When running this snippet through BabelJS: class FooError extends Error { constructor(message) { super(message); } } let error = new FooError('foo'); console.log(error, error.message, error.stack); it outputs {} which is not what I expect. Running error = new Error('foo'); console.log(error, error.message, error.stack); produces {} foo Error: foo at eval (eval at <anonymous> (https://babeljs.io/scripts/repl.js?t=2015-05-21T16:46:33+00:00:263:11), <anonymous>:24:9) at REPL.evaluate (https:/