console.log是否格式化Json对象有名称吗?

时间:2018-10-31 19:57:25

标签: javascript node.js json

打印json对象时,例如,在节点使用console.log执行的脚本中,它不能完全打印json。这种方法占据了中间的位置,并在不影响可读性的情况下尽可能少地打印了几行。

我想知道这种格式或算法是否有任何名称。我想用其他语言实现这种格式。

1 个答案:

答案 0 :(得分:1)

Node.js中的

console.log基本上是这样的:

(value, ...args) => process.stdout.write(util.format(value, ...args) + '\n')

摘自util.format上的文档:

  

如果第一个参数不是字符串,则util.format()返回一个字符串,该字符串是由空格分隔的所有参数的串联。每个参数都使用util.inspect()转换为字符串。

     

-https://nodejs.org/api/util.html#util_util_format_format_args

这意味着console.log(object)等效于:

> process.stdout.write(util.inspect(object) + '\n');

摘自util.inspect上的文档:

  

util.inspect()方法返回用于调试的对象的字符串表示形式。 util.inspect的输出可以随时更改,因此不应以编程方式依赖它。可以传递其他选项,以更改格式化字符串的某些方面。 util.inspect()将使用构造函数的名称和/或@@ toStringTag为检查的值创建可识别的标签。

     

-https://nodejs.org/api/util.html#util_util_inspect_object_showhidden_depth_colors

据我所知,util.inspect的默认格式设置没有“名称”,除了{{所提到的“紧凑”(默认为true的布尔选项) 1}}文档。