迭代器模式,指提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示。

    ES6 里的 Iterator 是迭代器模式的实现:

    1. let arr = ['a', 'b', 'c'];
    2. let iter = arr[Symbol.iterator]();
    3. iter.next() // { value: 'a', done: false }
    4. iter.next() // { value: 'b', done: false }
    5. iter.next() // { value: 'c', done: false }
    6. iter.next() // { value: undefined, done: true }

    反复调用迭代对象 的 next 方法,即可顺序访问数组的元素。