在 NodeJS 的 console.log 中的每一行的开头添加选项卡

编程入门 行业动态 更新时间:2024-10-05 17:25:33

在 NodeJS 的 console.log 中的每一行的开头添加<a href=https://www.elefans.com/category/jswz/34/1770395.html style=选项卡"/>

在 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 的 console.log 中的每一行的开头添加选项卡

本文发布于:2024-05-30 22:47:06,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1771007.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:选项卡   开头   NodeJS   console   log

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!