- 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 - 流
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL 入门
- Node.js - MySQL 创建数据库
- Node.js - MySQL 创建表
- Node.js - MySQL 插入数据
- Node.js - MySQL 从表中选择数据
- Node.js - MySQL 条件查询
- Node.js - MySQL 排序
- Node.js - MySQL 删除数据
- Node.js - MySQL 更新数据
- Node.js - MySQL 连接查询
- Node.js MongoDB
- Node.js - MongoDB 入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB 插入数据
- Node.js - MongoDB 查找数据
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB 删除数据
- Node.js - MongoDB 更新数据
- Node.js - MongoDB 限制结果
- Node.js - MongoDB 连接查询
- Node.js 模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - 实用程序模块
- Node.js - Web 模块
- Node.js 有用资源
- Node.js - 快速指南
- Node.js - 有用资源
- Node.js - 讨论
Node.js - Buffer.entries() 方法
NodeJS 的 buffer.entries() 方法根据给定的缓冲区创建一个迭代器对象,并返回缓冲区内容中的一对 [索引,字节]。
语法
以下是 NodeJS entries() 方法的语法:
buffer.entries()
参数
此方法没有任何参数。
返回值
buffer.entries() 方法返回一个迭代器对象,该对象包含给定缓冲区内容的索引和字节对。
返回值是一个迭代器,因此要访问它,可以使用 for-of() 循环。您还可以使用 next() 方法访问值。
示例
在下面的示例中,当控制台输出 i 时,将为您提供字母 H、E、L、L 和 0 的索引和 Unicode 字节值。
var buffer = Buffer.from('HELLO'); for (var i of buffer.entries()) { console.log(i); }
输出
0 是索引,字符 H 的 Unicode 值为 72,E 的值为 69,索引为 1,L 的值为 76,O 的值为 79。
[ 0, 72 ] [ 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 来循环迭代器。done: true 表示我们已到达迭代器的末尾。
[ 0, 72 ] [ 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
nodejs_buffer_module.htm
广告