Node.js Buffer 模块
定义和使用
Buffer 模块提供了一种处理二进制数据流的方式。
Buffer 对象是 Node.js 中的全局对象,不需要使用 require
关键字导入。
语法
创建长度为 15 的空 Buffer 的语法
var buf = Buffer.alloc(15);
Buffer 属性和方法
方法 | 描述 |
---|---|
alloc() | 创建一个指定长度的 Buffer 对象 |
allocUnsafe() | 创建一个指定长度的非零填充 Buffer 对象 |
allocUnsafeSlow | 创建一个指定长度的非零填充且非池化的 Buffer 对象 |
byteLength() | 返回指定对象中的字节数 |
compare() | 比较两个 Buffer 对象 |
concat() | 将一个 Buffer 对象数组连接成一个 Buffer 对象 |
copy() | 复制 Buffer 对象中指定数量的字节 |
entries() | 返回 Buffer 对象中 "索引" "字节" 对的迭代器 |
equals() | 比较两个 Buffer 对象,如果匹配则返回 true,否则返回 false |
fill() | 用指定的值填充 Buffer 对象 |
from() | 从对象(字符串/数组/缓冲区)创建一个 Buffer 对象 |
includes() | 检查 Buffer 对象是否包含指定的值。如果匹配则返回 true,否则返回 false |
indexOf() | 检查 Buffer 对象是否包含指定的值。返回第一次出现的索引,否则返回 -1 |
isBuffer() | 检查对象是否为 Buffer 对象 |
isEncoding() | 检查 Buffer 对象是否支持指定编码 |
keys() | 返回 Buffer 对象中的键数组 |
lastIndexOf() | 检查 Buffer 对象是否包含指定的值。返回从末尾开始的第一次出现的索引,否则返回 -1 |
length | 返回 Buffer 对象的长度(以字节为单位) |
poolSize | 设置或返回用于池化的字节数 |
readDoubleBE() | 从 Buffer 对象中读取 64 位双精度浮点数,以大端序返回结果 |
readDoubleLE() | 从 Buffer 对象中读取 64 位双精度浮点数,以小端序返回结果 |
readFloatBE() | 从 Buffer 对象中读取 32 位单精度浮点数,以大端序返回结果 |
readFloatLE() | 从 Buffer 对象中读取 32 位单精度浮点数,以小端序返回结果 |
readInt8() | 从 Buffer 对象中读取 8 位整数 |
readInt16BE() | 从 Buffer 对象中读取 16 位整数,以大端序返回结果 |
readInt16LE() | 从 Buffer 对象中读取 16 位整数,以小端序返回结果 |
readInt32BE() | 从 Buffer 对象中读取 32 位整数,以大端序返回结果 |
readInt32LE() | 从 Buffer 对象中读取 32 位整数,以小端序返回结果 |
readIntBE() | 从 Buffer 对象中读取指定数量的字节,以大端序返回结果 |
readIntLE() | 从 Buffer 对象中读取指定数量的字节,以小端序返回结果 |
readUInt8() | 从 Buffer 对象中读取无符号的 8 位整数 |
readUInt16BE() | 从 Buffer 对象中读取无符号的 16 位整数,以大端序返回结果 |
readUInt16LE() | 从 Buffer 对象中读取无符号的 16 位整数,以小端序返回结果 |
readUInt32BE() | 从 Buffer 对象中读取无符号的 32 位整数,以大端序返回结果 |
readUInt32LE() | 从 Buffer 对象中读取无符号的 32 位整数,以小端序返回结果 |
readUintBE() | 从 Buffer 对象中读取指定数量的字节,以无符号整数的形式返回结果 |
readUIntLE() | 从 Buffer 对象中读取指定数量的字节,以无符号整数的形式返回结果 |
slice() | 将 Buffer 对象切片成一个新的 Buffer 对象,从指定的起始位置到指定的结束位置 |
swap16() | 交换 16 位 Buffer 对象的字节序 |
swap32() | 交换 32 位 Buffer 对象的字节序 |
swap64() | 交换 64 位 Buffer 对象的字节序 |
toString() | 返回 Buffer 对象的字符串版本 |
toJSON() | 返回 Buffer 对象的 JSON 版本 |
values() | 返回 Buffer 对象中的值数组 |
write() | 将指定字符串写入 Buffer 对象 |
writeDoubleBE() | 使用大端序将指定的字节写入 Buffer 对象。字节应为 64 位双精度浮点数。 |
writeDoubleLE() | 使用小端序将指定的字节写入 Buffer 对象。字节应为 64 位双精度浮点数。 |
writeFloatBE() | 使用大端序将指定的字节写入 Buffer 对象。字节应为 32 位单精度浮点数。 |
writeFloatLE() | 使用小端序将指定的字节写入 Buffer 对象。字节应为 32 位单精度浮点数。 |
writeInt8() | 将指定的字节写入 Buffer 对象。字节应为 8 位整数 |
writeInt16BE() | 使用大端序将指定的字节写入 Buffer 对象。字节应为 16 位整数。 |
writeInt16LE() | 使用小端序将指定的字节写入 Buffer 对象。字节应为 16 位整数。 |
writeInt32BE() | 使用大端序将指定的字节写入 Buffer 对象。字节应为 32 位整数。 |
writeInt32LE() | 使用小端序将指定的字节写入 Buffer 对象。字节应为 32 位整数。 |
writeIntBE() | 使用大端序将指定的字节写入 Buffer 对象。 |
writeIntLE() | 使用小端序将指定的字节写入 Buffer 对象。 |
writeUInt8() | 将指定的字节写入 Buffer 对象。字节应为 8 位无符号整数 |
writeUInt16BE() | 使用大端序将指定的字节写入 Buffer 对象。字节应为 16 位无符号整数。 |
writeUInt16LE() | 使用小端序将指定的字节写入 Buffer 对象。字节应为 16 位无符号整数。 |
writeUInt32BE() | 使用大端序将指定的字节写入 Buffer 对象。字节应为 32 位无符号整数。 |
writeUInt32LE() | 使用小端序将指定的字节写入 Buffer 对象。字节应为 32 位无符号整数。 |
writeUIntBE() | 使用大端序将指定的字节写入 Buffer 对象 |
writeUIntLE() | 使用小端序将指定的字节写入 Buffer 对象 |