2014-03-27 33 views
1

我注意到,在NodeJS中,console.log([])console.log([].toString())分别产生了[]和一个空字符串。我想知道为什么这是如此,我怎么能得到console.log([])作为一个字符串的输出?`console.log([])``和`console.log([] .toString())`提供不同的输出

我了解阵列,我可以简单地用括号[]包裹.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)输出作为一个字符串,所以我也许可以连接它与另一个字符串?

谢谢。

+0

使用console.debug。 – ScoPi

+0

不幸的是我试图把'console.log'的行为当作一个字符串。我编辑了我的问题以反映我的意图。 –

+0

不会'b.toString'打印'[功能]'? – Scimonster

回答

2

我想你使用node.js.

阅读文档。使用util.format

所以答案是:

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

你是英雄,@alexeten。我会在让我接受这个答案的时候。 –

相关问题