Buffer跟Array很像,它主要用来操作字节。下面从模块结构和对象结构的层面上来认识。
6.1.1 模块结构
Buffer是一个典型的Javascript和c++结合的模块,它将性能相关部分用c++实现,将非性能部分用Javascript实现。
之前文章提到,Buffe所占用的内存并不是由V8分配,属于堆外内存。由于V8垃圾回收性能的影响,将常用的操作对象用更高效的内存分配回收策略来管理是个不错的思路。
6.1.2 Buffer对象
Buffer对象类似于数组,它的元素为16进制的两位数,即0到255的数值。
代码如下:
var str = "深入浅出node.js";
var buf = new Buffer(str,"utf-8"