Buffer 对象

简介: Buffer 对象

Buffer 对象

let buf = Buffer.from('鸡你太美');
console.log(buf);

输出结果:<Buffer e9 b8 a1 e4 bd a0 e5 a4 aa e7 be 8e>

返回的是十六进制数,一个中文字符占三位

let buf2 = Buffer.alloc(10);
console.log(buf2)

输出结果:<Buffer 00 00 00 00 00 00 00 00 00 00>

传入的是长度,返回的是零值

创建数组
var arr = new Array('1','2','3');
console.log(arr)

输出结果:[‘1’, ‘2’, ‘3’]

var arr1 = new Array(10);
console.log(arr1)

输出结果:[<10 empty items> ]

这里为 10 个空值

Buffer 类方法
查询个数
let buf = Buffer.from('鸡你太美');
console.log(buf);
let buf2 = Buffer.alloc(10);
console.log(buf2)
console.log(buf.length);
console.log(buf2.length);


创建的 buffer 对象,个数不能改变

判断编码是否支持
console.log(Buffer.isEncoding('utf8'))
console.log(Buffer.isEncoding('gbk'))


输出结果:

true

false

判断是否 Buffer 对象
let buf2 = Buffer.alloc(10);
console.log(Buffer.isBuffer(buf2));


输出结果:true

查看 byte 数据长度
console.log(Buffer.byteLength('鸡你太美'))

查看编码后的 byte 数据的长度,不指定编码默认 UTF-8

合并 Buffer 对象
let buf1 = Buffer.from('wolfcode');
let buf2 = Buffer.from('.cn');
let concatBuf = Buffer.concat([buf1,buf2]);
console.log(concatBuf.toString());

使用 Buffer 类 concat 方法将多个 Buffer 对象合并成一个,再用 toString 函数转成字符串类型

Buffer 实例方法
写入 Buffer 数据
let buf = Buffer.alloc(10);
console.log(buf);
let len = buf.write('wolfcode');
console.log(len);
console.log(buf);
console.log(buf.toString());
console.log(buf.toJSON());

输出结果:

<Buffer 00 00 00 00 00 00 00 00 00 00>

8

<Buffer 77 6f 6c 66 63 6f 64 65 00 00>

wolfcode

{

type: ‘Buffer’,

data: [

119, 111, 108, 102,

99, 111, 100, 101,

0, 0

]

}

使用 Buffer 的实例方法 write 写入 Buffer 数据

使用 toString 方法转成字符串类型,注意:非文本信息转成字符串会乱码,没有意义

使用 toJSON 方法转成 json 类型,数据变成十进制

相关文章
|
10月前
|
存储 Java 索引
43 # buffer 的应用
43 # buffer 的应用
42 0
|
6天前
|
Java
Buffer 缓冲区操作
Buffer 缓冲区操作
3 0
|
9月前
Cache 和 Buffer 有什么区别?
Cache 和 Buffer 有什么区别?
|
JavaScript 网络协议 前端开发
Buffer 类型介绍|学习笔记
快速学习 Buffer 类型介绍
552 0
Buffer 类型介绍|学习笔记
|
存储 缓存 算法
Buffer
Buffer
213 0
Buffer
|
前端开发
字符串与Buffer
字符串与Buffer
54 0
|
存储 SQL 缓存
写缓冲(change buffer),这次彻底懂了!!!
一次了解缓冲池(buffer pool)。
541 0
写缓冲(change buffer),这次彻底懂了!!!