javascript - 在 node.js 中输出完整的错误对象

标签 javascript linux node.js command-line

有几个地方会用到错误对象,比如当您捕获错误时,或者在 exec 的情况下,错误对象可以由子进程传回。当您尝试记录该信息时,并非所有信息都能记录下来。

我试过以下方法:

console.log(error);
console.log(error.stack);
console.log(util.inpect(error, true, null));

所有这些选项似乎都输出了一组不同的不完整数据。有没有一种方法可以确保我始终从显示的错误中获得我需要查看的所有数据,或者我是否需要使用所有这三行(是否需要添加更多语句?)?

最佳答案

您可以使用 JSON 将许多 JavaScript 对象转换为字符串:

console.log(JSON.stringify(error, ["message", "arguments", "type", "name"]));

编辑: 已更新以反射(reflect)@laggingreflex 在评论中提出的观点...

关于javascript - 在 node.js 中输出完整的错误对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30603713/

相关文章:

javascript - 侧面板到顶部。还有其他解决办法吗?

javascript - 为什么我收到此消息 'Telerik is undefined'?

linux - Debian Mips 系统调用 unistd.h 丢失了吗?

javascript - NodeJ 需要 Apache 吗?

javascript - 有没有办法在 Windows 中使用 Bash 命令运行 Node.js?

javascript - Node 中的动态函数调用(无框架)

javascript - Ajax 在登录表单中显示错误而不重新加载页面

windows - 在 Windows 上使用为 Linux 构建的库

c++ - librt和对`mq_unlink'和 friend 的 undefined reference

javascript - nodejs ws.Server 的特定选项