# Iterator(遍历器)

# 概述

  • 目前有四种数据集合,ArrayObjectMapSet。而Iterator是一种接口,为各种不同的数据结构提供统一的访问机制。
  • 其作用有三个:
    • 一是为各种数据结构,提供一个统一的,简便的访问接口。
    • 二是使得数据结构的成员能够按某种次序排列。
    • 三是Iterator接口主要供ES6的新遍历命令for...of消费。

# 默认 Iterator 接口。

  • Iterator 接口的目的就是为所有的数据结构,提供一种统一的访问机制,即for...of循环。
  • 一种数据结构只要部署了 Iterator 接口,则称这种数据结构是"可遍历的"(iterable).
  • 默认的iterator接口部署数据结构的Symbol.iterator属性上,可以说只要有Symbol.iterator属性,就是可遍历的。
const obj = {
    [Symbol.iterator]: function () {
        return {
            next: function () {
                return {
                    value: 1,
                    done: true
                }
            }
        }
    }
}
最后一次修改时间: 9/28/2020, 11:37:23 AM