node.js Buffer(缓冲区)和concat方法
Buffer(缓冲区)什么是Buffer因为JavaScript语言自身只有字符串数据类型,没有二进制数据类型,但在处理TCP流或文件流的的时候必须使用二进制数据,所以Node.js中定义了Buffer类,该类用来创建一个专门存放二进制数据的缓存区;1. Buffer实例与JavaScript字符串之间的互转Buffer实例一般用在表示编码字符的序列let buf = new Buffe...
·
Buffer(缓冲区)
什么是Buffer
因为JavaScript语言自身只有字符串数据类型,没有二进制数据类型,但在处理TCP流或文件流的的时候必须使用二进制数据,所以Node.js中定义了Buffer类,该类用来创建一个专门存放二进制数据的缓存区;
1. Buffer实例与JavaScript字符串之间的互转
Buffer实例一般用在表示编码字符的序列
let buf = new Buffer('宝宝');
console.log(buf);//e5 ae 9d e5 ae 9d
let buf1 = new Buffer([0xe5, 0xae, 0x9d, 0xe5, 0xae, 0x9d]);//因为是16进制所以前边需要带上0x 否则报错
//所以e5 ae 9d e5 ae 9d就可以转换成宝宝
console.log(buf1.toString());//宝宝
console.log(buf.length);//打印buffer占用的多少个字符空间 6
小结:
通过let buf = new Buffer('宝宝');打印显式的字符编码(e5 ae 9d e5 ae 9d),在通过let buf1 = new Buffer([0xe5, 0xae, 0x9d, 0xe5, 0xae, 0x9d]) 用console.log(buf.toString())打印就可以实现Buffer实例与普通JavaScript字符串之间进行转换
字符串转buffer:new Buffer('hello');
buffer转字符串:buf.toString()
2. Buffer和对象互转
- 对象转buffer
let buf = new Buffer(JSON.stringify({ name: '宝宝' })) - buffer转字符串
let str = buf.toString() - 字符串转对象
JSON.parse(str)
3. concat(拼接)方法
let buf1 = new Buffer('宝宝');
let buf2 = new BUffer('baobao');
let buf3 = Buffer.concat([buf1,buf2]);
console.log(buf3.toSting());//宝宝baobao
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)