nodejs之Buffer

Buffer是什么? 简单点理解,buff就是固定长度的uint8array.(es6已实现TypedArray).

由于是固定长度所以没有了splice,concat方法。

由于是固定类型所以没有了join,split方法

由于是二进制操作,所以有数据类型读写,大头,小头等

1:怎么创建Buffer呢?

Buffer.from(array|string|buffer),Buffer.alloc(size),Buffer.allocUnsafe(size). 不推荐用new Buffer(array,string...)

2:转化 buff.toString('hex'|'utf8'......); buff.toJSON()

3:合并 Buffer.concat([buff1,buff2], len);

4:查找 buffer.indexOf(); buffer.includes()

5:复制 slice, copy

6:键-值. buf.keys(), buf.values() 基本没什么用

7:二进制操作

buf.readXXX()

buff.writeXXX()

注意大头和小头

const buf = Buffer.allocUnsafe(6);

buf.writeUIntBE(0x1234567890ab, 0, 6);

// Prints: <Buffer 12 34 56 78 90 ab>

console.log(buf);

buf.writeUIntLE(0x1234567890ab, 0, 6);

// Prints: <Buffer ab 90 78 56 34 12> console.log(buf);