初识nodejs12

来源:互联网 发布:sql增加数据 编辑:程序博客网 时间:2024/06/10 21:51

Buffer中静态方法的使用

  • 上篇学习到Buffer对象为我们提供的对象方法,是需要new出来一个实例的,除了这个之外呢,还为我们提供了Buffer的一些类方法,不需要实例化的new的类方法也就是静态方法.如果给定的编码是有效的,那么返回值是true,否则返回的是false.
  • -

判断Buffer是否支持某种编码方式

  • Buffer对象的isEncoding方法,验证是不是Buffer对象支持的编码方式,返回值是true or false.

    代码片段

    • Buffer的类方法,静态方法.

      • */
        console.log(Buffer.isEncoding(“utf-8”));
        console.log(Buffer.isEncoding(“gbk”));
        console.log(Buffer.isEncoding(“hex”));//十六进制`

测试某个对象是不是Buffer——-Buffer.isBuffer(obj);测试这个obj是否是一个Buffer.

代码片段

var obj=new Buffer(13);var arr=[1,2,3];console.log(Buffer.isBuffer(obj));console.log(Buffer.isBuffer(arr));

Buffer.byteLength(string,[encoding])—–将会返回这个字符串的真实的byte长度,encoding的默认编码是utf-8.

代码片段:

console.log(Buffer.byteLength(str));console.log(Buffer.byteLength(str,"ascii"));console.log(Buffer.byteLength(str,"utf-8"));console.log(str.length);//字符长度,字节长度的不同.不同的编码方式,字符串占据的字节是不一样的.`

Buffer.concat(list,[totalLength])——返回一个保存着,将传入Buffer数组中,所有Buffer对象拼接在一起的Buffer对象.为了降低消耗性能:计算好字符串的字节长度,即totalLength的长度.

代码片段:

var list=[new Buffer(str1),new Buffer(str2)];console.log(list);var bf=Buffer.concat(list);console.log(bf);控制台输出了:[ <Buffer 7a 68 61 68 75 61 6e 67>, <Buffer e6 9c ad e5 b9 8c> ]<Buffer 7a 68 61 68 75 61 6e 67 e6 9c ad e5 b9 8c>`

**concat [kangkat]
函数;合并数组;合并多个字符串;联系我们**

process.stdout.write("请输入内容: ");process.stdin.resume();process.stdin.on("data",function(chunk){    console.log(chunk); });//前面学过的process进程的标准输入输出流,就是字节型的Buffer对象.
process.stdout.write("请输入内容: ");process.stdin.resume();process.stdin.on("data",function(chunk){    console.log("您输入的内容是: "+chunk.toString()); });//前面学过的process进程的标准输入输出流,就是字节型的Buffer对象.// 和字符串在一起的时候自动的调取toString方法.

end

原创粉丝点击