缓冲区Buffer是暂时存放输入输出数据的一段内存
JS语言没有二进制数据类型,而在处理TCP和文件流的时候,必须要处理二进制数据
NodeJS提供了一个Buffer对象来提供对二进制数据的操作
是一个表示内存分配的全局对象,也就是说要放到缓冲区中的字节数需要提前确定
Buffer好比由一个多位字节元素组成的数组,可以有效的在JavaScript中表示二进制数据
字节
1024b = 1k;
8bit(8个二进制) = 1b;
1个汉字(3个b)
1个字节转化成十进制是255
1个字节最大转换成16进制是ff
定义buffer的三种方式
通过长度定义buffer
let buffer = Buffer.alloc("6");
let buffer = Buffer.allocUnsafe("6");
通过数组定义buffer
let buffer = Buffer.from([1,2,3,4]);//会自动把10进制转化成16进制
buffer.length //转化为buffer后长度为buffer的长度
字符串创建创建buffer
let buffer = Buffer.from("关注我")
buffer.fill 方法,填充buffer中的内容
buffer.toString方法,将buffer转化成字符串
buffer.slice方法,截取想要的buffer
buffer.copy方法,拷贝buffer
Buffer.concat方法,buffer的拼接方法
Buffer.isBuffer,判断是否是buffer类型