所以我有一个定义如下的函数:
printPrettyJson =
function (json)
{
// logger.log(chalk.magenta(JSON.stringify(json, null, 4)))
try
{
throw Error("printPrettyJson")
}
catch (error)
{
console.log(error.stack)
console.debug(chalk.magenta(JSON.stringify(json, null, 4)))
}
}
我要做的是简单地打印出JSON类型的对象(因为否则它将显示[Object object]
。但是,我想知道是否在不抛出笨拙的Error
的情况下执行此操作。我从另一个文件中调用它,例如
File1
const printPrettyJson = require("file2)
Line 101: printPrettyJson(json)
File2
// printPrettyJson's definition in here
那么如何在line 101
的函数调用中从File1输出printPrettyJson
?
答案 0 :(得分:1)
您可以通过创建新的错误对象从堆栈跟踪中获取行号,实际上不必抛出错误:
printPrettyJson =
function (json)
{
console.log(new Error().stack)
console.debug(chalk.magenta(JSON.stringify(json, null, 4)))
}
答案 1 :(得分:1)
您可以使用console.trace
输出调用堆栈而不会产生错误。它符合console
API的standard规范。