一、Buffer数据类型
JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在处理像文件流时(文件读写操作),必须使用到二进制数据。因此在 Node.js 中,定义了一个 Buffer 类,该类用来创建一个专门存放二进制数据的缓存区。说白了,Buffer 类似于一个整数数组。
下面是一张ASCII表:
创建buffer对象 :
let buf1 = Buffer.from([97, 98, 99]); //根据一个数组创建 Buffer 对象 console.log(buf1); //<Buffer 61 62 63> 以16进制存在buffer对象中 console.log(buf1.toString());[97,98,99] let buf2 = Buffer.from("nodejs"); //根据一个字符串创建 Buffer 对象 console.log(buf2); console.log(buf2.toString());//nodejs let buf3 = Buffer.alloc(10); // 创建了可以存放10个字符的buffer对象 buf3.write("abc"); //按照ASCII表的值,转16进制,存在buffer中 console.log(buf3); console.log(buf3.toString()); // 总结: 以后看到 <Buffer ..... > 需要 toString() 才能看到里面的真实数据