// Buffer 类,缓冲
// buffer对象类似于数组,他的元素都是16进制的两位数,即0~255的数值,给元素的赋值如果小于0,就将该值逐次加256,直到得到一个0255之间的整数,如果得到赋值大于255,就逐次减256,直到得到0255区间内的数值。如果是小数,则舍弃小数部分,只保留整数部分。
// process.stdin.on('data',(e)=>{
// console.log(e)
// })
/**
* 位->字节
*
* 0&1 ->8位
*
* 00000000 -> 11111111(一个字节最小值和最大值)
*/
let bf = new Buffer(5)//创造四个字节长度的Buffer
bf[0] =-1 //ff
bf[1] =16 //10
bf[2] =15 //0f
bf[3] ='a' // 0 (buffer对象类似于数组,他的元素都是16进制的两位数,即0~255的数值)
bf[4] = 300 //2c
console.log(bf[4]) //44->转为16进制2c
let bf1 = new Buffer('miaov')//转成16进制
console.log(bf1) //<Buffer 6d 69 61 6f 76>
// 一个中文三个字节
let bf2 = new Buffer('无敌')
console.log(bf2) //<Buffer e6 97 a0 e6 95 8c>
let bf3 = new Buffer(10)
bf3.fill(10,2,4) // 填充内容,起始位,结束位,编码类型
let bf4 = new Buffer('miaov')
console.log(bf3)
console.log(bf.includes(16)) //true
console.log(bf3.equals(bf2)) // false
console.log(bf1===bf4) //false,比较地址是否相等
//比较值是否相等
console.log(bf1.equals(bf4)) //true
//比较大小
console.log(bf2.compare(bf1)) //1
//字节长度
console.log(Buffer.byteLength('miaov')) //5
......等其他api