Node.js 如何将节点缓冲区转换为类似console.log show的字符串

Node.js 如何将节点缓冲区转换为类似console.log show的字符串,node.js,Node.js,我想将缓冲区记录为字符串,但我不想使用buffer.toString()方法 console.log(新缓冲区(12)) 展示 但是console.log('buffer:'+新的buffer(12)) 展示 缓冲区:某些东西无法读取 我想要 缓冲区:正在执行 var b = new Buffer([0x41, 0x42, 0x43, 0x44]); console.log(b); // <Buffer 41 42 43 44> 鉴于 var b = new Buffer([0x

我想将缓冲区记录为字符串,但我不想使用buffer.toString()方法

console.log(新缓冲区(12))

展示

但是
console.log('buffer:'+新的buffer(12))

展示

缓冲区:某些东西无法读取

我想要

缓冲区:
正在执行

var b = new Buffer([0x41, 0x42, 0x43, 0x44]);
console.log(b);
// <Buffer 41 42 43 44>
鉴于

var b = new Buffer([0x41, 0x42, 0x43, 0x44]);
console.log('str' + b);
// strABCD
和做同样的事

console.log('str' + b.toString());
因为使用
+
的字符串连接会自动使用
.toString()
将运算符的两侧转换为字符串<另一方面,code>console.log(…)尽可能通过调用
.inspect()
将其参数转换为字符串

最简单的方法就是让console.log通过传递多个参数来完成它的任务

console.log('buffer:', new Buffer(12))

请注意,
而不是
+
,因此,您不需要使用
.toString
进行连接,而是让
控制台.log
自己对其每个参数进行字符串化。

您的意思是要打印相同的十六进制值而不将其转换为字符串?b.inspect()正是我想要的
console.log('buffer:', new Buffer(12))