任何Error
对象都有一个stack
成员,它可以捕获构造它的点。
方式一:
var stack = new Error().stack console.log(stack)
注意:如果是需要保存堆栈信息到 某变量 或 某日志(文本)系统中,推荐使用这种方式!
方式二:
console.trace("Here I am!")
方式三:
try { // if something unexpected throw new Error("Something unexpected has occurred."); } catch (e) { console.error(e); // 或 console.log(e.stack); }
它会记录:
错误:发生了意外情况. at对象的主要(c:\ Users\Me\Documents\MyApp\app.js:9:15) .(c:\ Users\Me\Documents\MyApp\app.js:17:1) 在Module._compile(module.js:460:26) 处于Object.Module._extensions..js(module.js:478:10) ) 在Module.load(module.js:355:32) 的Function.Module._load(module.js:310:12)上, 在Function.Module.runMain(module.js:501:10) 启动时(node.js) :129:16) 在node.js:814:3