Buffer缓冲器
浏览器中基本上都是
数组 [ ]
对象 { }
其中寸的数据是 js基本数类型 + 引用类型
服务器 客户端给服务器,可能是媒体文件,可能是音频文,或者其他万物,所以服务器有一双万能的 ”手“ 叫做 Buffer 缓冲器
服务器把接收的东西 比如 js基本数类型 + 引用类型 + 图片 + 音频 都会翻译成 0 和 1 存到服务器中
Buffer 是一种和数组类似的对象,不同的是 Buffer 是专门用来保存二进制数据的
Buffer 特点
1、Buffer 的效率很高,存储和读取很快,他是直接对计算机的内存进行操作
2、Buffer 的大小一旦确定了,不可修改
3、每个元素占用内存大小为1字节
4、Buffter 是 Node中的非常核心的模块,无需下载,无需引入,直接即可使用
详细如下:
//new了一个实例对象 ----- 性能特别差
// 1、开辟新空间
// 2、清理
let buy1 = new Buffer(10)
console.log(buy1)
//创建一个实例对象 ------ 性能比 new Buffer() 稍微强一点
// 开辟新空间(没有前人使用的空间)
let buy2 = Buffer.alloc(10)
console.log(buy2)
// 创建一个实例对象 ------ 性能最好
// 开辟新空间 不清理
let buy3 = Buffer.allocUnsafe(10)
console.log(buy3)
// Buffer 存储的是2进制 输出的时候自动转换为16进制
// 在堆中开辟新空间可能残留别人用过的数据,所以 allocUnsafe 不能为空
// 将一个数数据存入 Buffer
let buy4 = Buffer.from('holle wore')
console.log(buy4)