(一)Buffer (缓冲区)
1. Buffer 的结构和数组很像,操作的方法也和数组类似
为什么有数组了还要新发明一个Buffer呢?
(1)数组是js语法,js代码性能较差
(2)数组中可以存的数据类型有限,传统的数组不能满足服务端所需的数据类型的需求,比如音频、视频、图片等二进制文件,而Buffer就是专门用来存储二进制文件的
(3) 使用Buffer不需要引入模块,直接用即可
(二)代码演示
1. 将一个字符串保存在Buffer
Buffer.from 语法
var str = 'test'
var buf = Buffer.from(str)
console.log(buf) // <Buffer 74 65 73 74>
console.log(buf.length) // 4
根据结果可以看出
// 74 -> t
// 65 -> e
// 73 -> s
<Buffer 74 65 73 74>
// 一个映射
在 Buffer 中存储的都是二进制(数据在传输中二进制传输)~但是在显示时都是以16进制去显示
2. buffer中每一个元素的范围是从 00000000 --- ffffffff
计算机中一个0或者1个1,我们成为1位(bit)
8bit = 1byte (字节) 8位等于一个字节
buffer 中的一个元素,占用一个字节,字节是计算机传输中的最小单位
所以 test 占用 4 个字节
3.