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
感谢大家的阅读,如有不对的地方,可以向我提出,感谢大家!