`console.log()`和`console.log(。toString())`提供了不同的输出

我注意到,在NodeJS中, console.log([])console.log([].toString())产生[]和一个空string。 我想知道为什么这样,我怎么能得到console.log([])的输出作为一个string?

我理解数组,我可以简单地使用括号[]包装.toString() ,但对于其他构造的对象,说一个Buffer

 var b = new Buffer('hi'); console.log(b); // <Buffer 68 69> console.log(b.toString()); // hi console.log('' + b); // hi 

是可以得到光秃的console.log(b)作为一个string输出,所以我可以连接它与另一个string?

谢谢。

我想你使用node.js

阅读文档。 console.log使用util.format

所以答案是:

 var util = require('util'); var b = new Buffer('hi'); var str = util.format(b);