admin 管理员组文章数量: 1184232
在 NodeJS 的 console.log 中的每一行的开头添加选项卡
我在我的代码中经常使用 console.log 来更好地调试。例如,在我的
cart.js 文件夹中的 controllers 文件中,在 getProductsInCart 函数中,我这样做:
控制器/cart.js
console.log('[controllers/cart.js].getProductsInCart', '\nproducts =', products);`
在终端中给我以下结果:
[controllers/cart.js].getProductsInCart // <-- where `products` object is located
products = [
{
productId: new ObjectId("645a54116710e60e28b96903"),
quantity: 1,
_id: new ObjectId("645a6e2e119c195fd8b32f99")
}
]
My
products 对象是从 MongoDB 中获取的。然而,当我开始在不同的文件中拥有越来越多的函数和变量时,日志会有点难以阅读。
因此,我希望终端中记录的每个变量如下所示:
[controllers/cart.js].getProductsInCart
products = [
{
productId: new ObjectId("645a54116710e60e28b96903"),
quantity: 1,
_id: new ObjectId("645a6e2e119c195fd8b32f99")
}
]
如何在每行的开头添加 2 个选项卡,使我的
products 值看起来像那样?
回答如下:
如果您反对将日志记录库引入您的项目,请考虑使用
JSON.stringify() 为产品对象添加额外的缩进或 console.group()/console.groupEnd() 为中间打印的所有行添加缩进,或两者的组合.
JSON.stringify()的第三个参数为结果字符串中嵌套的对象的每一层增加了一些空格:
console.log('something', 'products =', JSON.stringify(products, null, 5))
需要注意的是,空间的数量会随着嵌套的每一层而成倍增加。
console.group() / groupEnd() 让你缩进它们之间的行:
console.group();
console.log('1'); // indented
console.groupEnd();
console.log('2'); // not indented
console.dir() 是另一个用于记录对象的有用工具。它为属性值添加颜色,这通常有助于提高可读性。
本文标签: 在 NodeJS 的 consolelog 中的每一行的开头添加选项卡
版权声明:本文标题:在 NodeJS 的 console.log 中的每一行的开头添加选项卡 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.roclinux.cn/b/1717626522a709880.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论