Node.js之Buffer(缓冲器)

Buffer的概念
Buffer 是一个类似于数组的 对象,用于表示固定长度的字节序列
Bufer 本质是一段内存空间,专门用来处理 二进制数据。

Buffer创建方法

// 1.alloc
let buf1 = Buffer.alloc(10)
// 使用alloc创造buffer的方法 是一个二进制类 都会归零
console.log(buf1) //<Buffer 00 00 00 00 00 00 00 00 00 00>
// 2.allocUnsafe
let buf2 = Buffer.allocUnsafe(10)
// 与alloc方法是一样的 但不安全 可能会包含旧的内存数据
// 那为什么我们不直接使用alloc方法 因为allocUnsafe方法比alloc方法快一些 不需要做归零操作
console.log(buf2) //<Buffer 00 00 00 00 00 00 00 00 00 00>
// 3.from
let buf3 = Buffer.from("hello")
// 使用了from方法 会把字符转换成 ASCII 然后转换成二进制到Buffer当中
// 我们也可以使用数组 会转换为二进制
let buf4 = Buffer.from([100,100,100,100])
console.log(buf3) //<Buffer 68 65 6c 6c 6f>
console.log(buf4) //<Buffer 64 64 64 64>

Buffer操作方法

Buffer与字符串的转换

let buf3 = Buffer.from("hello")
console.log(buf3) //<Buffer 68 65 6c 6c 6f>
console.log(buf3.toString()) // hello
let buf4 = Buffer.from([100,100,100,100])
console.log(buf4) //<Buffer 64 64 64 64>
console.log(buf4.toString()) // dddd

修改

let buf3 = Buffer.from("hello")
console.log(buf3) //<Buffer 68 65 6c 6c 6f>
buf3[0] = 95
console.log(buf3) // <Buffer 5f 65 6c 6c 6f>
console.log(buf3.toString()) // _ello

感谢大家的阅读,如有不对的地方,可以向我提出,感谢大家!

posted @ 2023-11-21 13:20  一叶知秋04  阅读(45)  评论(0编辑  收藏  举报  来源