Nodejs 的 Buffer 介绍

发布于 2021-07-19 08:52:23 字数 1193 浏览 1363 评论 0

一、类型介绍

1、JavaScript 语言没有读取或操作二进制数据流的机制。

2、Node.js 中引入 Buffer 类型使我们可以操作 TCP流 或 文件流

3、Buffer 类型的对象类似于整数数组,但 Buffer 的大小是固定的、且在V8堆外分配物理内存。Buffer 的大小在被创建时确定,切无法调整(buf.length 是固定的,不允许修改)。

4、Buffer是全局的。所以使用的时候无需 require() 的方式来加载。

二、如何创建一个 Buffer 对象

常见的 API 介绍

1、创建一个Buffer对象

//1. 通过Buffer.from() 创建一个 Buffer 对象

//1.1 通过一个字节数组来创建一个Buffer对象
var arr = [0x68,0x65,0x6c,0x6f,0x20,0xe4,0xb8,0x96,0xe7,0x95,0x8c];
var buf = Buffer.from(arr);
console.log(buf.toString('utf-8'));

//1.2 通过字符串来创建一个Buffer对象
var buf = Buffer.from("你好世界!hello world!");
console.log(buf);
console.log(buf.toString);

2、拼接多个 Buffer 对象为一个对象

var bufferList = [];
var buf = Buffer.concat(bufferList);

3、获取字符串对应的字节个数

var len = Buffer.byteLength("你好世界!hello world!");
console.log(len);

4、判断一个对象是否是 Buffer 类型对象

Buffer.isBUffer(obj);

5、获取 Buffer 中的某个字节

bug[index]

6、获取 Buffer 对象中的字节个数

buf.length

三、Buffer对象与编码

Node.js 目前支持的编码如下:

1、ascii
2、utf8
3、utf16e
4、base64
5、latin1
6、hex

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84961 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文