ES6(Iterator、Generator))

Iterator

一种数据结构只要部署了 Iterator 接口,我们就称这种数据结构是“可遍历的”(iterable)。

一个数据结构只要具有 Symbol.iterator 属性,就可以认为是“可遍历的”(iterable)。

原生具备 Iterator 接口的数据结构如下。

  • Array
  • Map
  • Set
  • String
  • TypedArray
  • 函数的 arguments 对象
  • NodeList 对象

调用Iterator的场合

  • 解构赋值
  • 扩展运算符
  • yield*
  • for of
  • Array.from()
  • Map() Set() WeakMap() WeakSet()
  • Promise.all()
  • Promise.race()

Generator

  • 返回一个遍历器对象

Generator 函数执行后,返回一个遍历器对象。该对象本身也具有Symbol.iterator属性,执行后返回自身。()

更新时间:2025-03-13 13:37:31