初识nodejs10

Buffer的创建 和使用


  1. buffer 英[ˈbʌfə(r)]
    美[ˈbʌfɚ]
    n. 缓冲器; 起缓冲作用的人(或物); [化] 缓冲液,缓冲剂; [计] 缓冲区;
    vt. 缓冲; [化]把缓冲液加入(溶液);
    [例句]Keep savings as a buffer against unexpected cash needs
    存些积蓄以备不时之需。
    [其他] 第三人称单数:buffers 复数:buffers 现在分词:buffering 过去式:buffered 过去分词:buffered

  • 一个操作二进制数据的类,我们在操作文件,或者网络数据的时候,实际上操作的是二进制数据流,Node 为我们提供了一个更加方便的去操作这种数据流的类Buffer,他是一个全局的类;
  • new Buffer(size);数字
  • new Buffer(array)数组
  • new Buffer(string,[encoding])字符串 ;编码方式;
  • 这个类使用起来,有点类似数组的意思,相似,但是不是数组.

new Buffer(size); —— size[Number] ——创建一个Buffer对象,并且为这个对象分配一个大小.

  • 当我们为一个Buffer对象分配一个空间大小的时候,,其长度是固定的,不可以更改.

  • 16进制的<Buffer 6d 69 61 6f 76>
    109
    105
    97
    111
    118
    2进制的
var bf=new Buffer("miaov","utf-8");
console.log(bf);

for(var i=0; i<bf.length; i++){
    console.log(bf[i]);
}

转化成16进制的编码方式:

var bf=new Buffer("miaov","utf-8");
console.log(bf);

for(var i=0; i<bf.length; i++){
    console.log(bf[i].toString(16));
}
<Buffer 6d 69 61 6f 76>
6d
69
61
6f
76```

操作2进制变成字符串的方法;

var bf=new Buffer("miaov","utf-8");
console.log(bf);

for(var i=0; i<bf.length; i++){
    //console.log(bf[i].toString(16));
    console.log(String.fromCharCode( bf[i]));
}
<Buffer 6d 69 61 6f 76>
m
i
a
o
v

一个中文汉字的占用为3个字节长度;

var str1= "miaov";
var bf1= new Buffer("miaov");
console.log(str1.length);
console.log(bf1.length);

var str2= "妙味";
var bf2=new Buffer("妙味");
console.log(str2.length);
console.log(bf2.length);

所以,你要取得的,是字符串的长度,还是,字节的长度,他们之间还是有很大的区别的.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值