本文摘录自《Nodejs学习笔记》,更多章节及更新,请访问 github主页地址。欢迎加群交流,群号 197339705。
模块概览
Buffer是node的核心模块,开发者可以利用它来处理二进制数据,比如文件流的读写、网络请求数据的处理等。
Buffer的API非常多,本文仅挑选 比较常用/容易理解 的API进行讲解,包括Buffer实例的创建、比较、连接、拷贝、查找、遍历、类型转换、截取、编码转换等。
创建
new Buffer(array)
Buffer.alloc(length)
Buffer.allocUnsafe(length)
Buffer.from(array)
通过 new Buffer(array)
// Creates a new Buffer containing the ASCII bytes of the string 'buffer'const buf = new Buffer([0x62, 0x75, 0x66, 0x66, 0x65, 0x72]);
验证下:
var array = 'buffer'.split('').map(function(v){ return '0x' + v.charCodeAt(0).toString(16)});console.log( array.join() );// 输出:0x62,0x75,0x66,0x66,0x65,0x72