概念
遍历器(Iterator)就是这样一种机制。它是一种接口,为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署 Iterator 接口,就可以完成遍历操作(即依次处理该数据结构的所有成员)
作用
Iterator 的作用有三个:一是为各种数据结构,提供一个统一的、简便的访问接口;二是使得数据结构的成员能够按某种次序排列;三是 ES6 创造了一种新的遍历命令for...of
循环,Iterator 接口主要供for...of
消费。
代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Iterator</title>
</head>
<body>
<script>
//Iterator接口
{
let arr = ['hello', 'world'];
let map = arr[Symbol.iterator]();
console.log(map);
//Array Iterator {}
console.log(map.next());
//{value: "hello", done: false}
console.log(map.next());
//{value: "world", done: false}
console.log(map.next());
//{value: undefined, done: true}
}
//自定义Iterator接口
{
let obj =