- Node.js教程
- Node.js - 教程
- Node.js - 简介
- Node.js - 环境设置
- Node.js - 首次申请
- Node.js - REPL 终端
- Node.js - 命令行选项
- Node.js - 包管理器 (NPM)
- Node.js - 回调概念
- Node.js - 上传文件
- Node.js - 发送电子邮件
- Node.js - 活动
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 调试器
- Node.js - 全局对象
- Node.js - 控制台
- Node.js - 流程
- Node.js - 扩展应用程序
- Node.js - 包装
- Node.js - Express 框架
- Node.js - RESTful API
- Node.js - 缓冲器
- Node.js - Streams
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL 快速入门
- Node.js - MySQL创建数据库
- Node.js - MySQL创建表
- Node.js - MySQL Insert Into
- Node.js - MySQL Select From
- Node.js - MySQL Where 子句
- Node.js - MySQL Order By
- Node.js - MySQL Delete
- Node.js - MySQL Update
- Node.js - MySQL Join
- Node.js MongoDB
- Node.js - MongoDB 快速入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB Insert
- Node.js - MongoDB Find
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB Delete
- Node.js - MongoDB Update
- Node.js - MongoDB Limit
- Node.js - MongoDB Join
- Node.js模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - utility 模块
- Node.js - Web 模块
Node.js - Buffer.entries() 方法
NodeJS buffer.entries() 方法从给定的缓冲区创建一个迭代器对象,并从缓冲区的内容中返回一对带有 [index, byte] 的对。
语法
以下是 NodeJS entries() 方法的语法 -
buffer.entries()
参数
此方法没有任何参数。
返回值
buffer.entries() 方法返回一个迭代器对象,该对象具有一对索引和字节,来自给定缓冲区的内容。
返回的值是一个迭代器,因此要访问它,您可以使用 for-of() 循环。您还可以使用 next() 方法访问该值。
例在下面的示例中,当 Consoled 时,i 将为您提供字母 H、E、L、L 和 0 的索引和 Unicode 字节值。
var buffer = Buffer.from('HELLO');
for (var i of buffer.entries()) {
console.log(i);
}
输出
0 是索引,72 是字符 H 为 72 的 Unicode 值,E 是 69,index:1,L 是 76,O 是 79。
[ 0, 72 ]
[ 1, 69 ]
[ 2, 76 ]
[ 3, 76 ]
[ 4, 79 ]
[ 1, 69 ]
[ 2, 76 ]
[ 3, 76 ]
[ 4, 79 ]
例
在此示例中,将使用 next() 方法访问从 buffer.entries() 返回的迭代器。
var buffer1 = Buffer.from('HELLO');
const bufferiterator = buffer1.entries();
let myitr = bufferiterator.next();
while(!myitr.done){
console.log(myitr.value);
myitr = bufferiterator.next();
}
输出
迭代器通过连续调用 next() 方法进行循环,直到 done 的值变为 true。Have the done: true 表示我们已经到达了迭代器的末尾。
[ 0, 72 ]
[ 1, 69 ]
[ 2, 76 ]
[ 3, 76 ]
[ 4, 79 ]
[ 1, 69 ]
[ 2, 76 ]
[ 3, 76 ]
[ 4, 79 ]
例
我们还可以使用 Buffer.entries() 方法将 buffer1 的内容复制到另一个缓冲区。
const buffer1 = Buffer.from("HELLO");
const buffer2 = Buffer.alloc(buffer1.length);
for (const [index, bytevalue] of buffer1.entries()) {
buffer2[index] = bytevalue;
}
console.log("The string in buffer2 is "+buffer2.toString());
输出
在上面的示例中,我们使用字符串创建了一个缓冲区:HELLO,为 buffer2 分配了相同长度的字节。稍后,我们循环了 buffer1 的迭代器,并使用索引和值更新了 buffer2,如示例中所示。
The string in buffer2 is HELLO