Skip to content

【前端】迭代器模式 ​

迭代器模式的实现 ​

迭代器模式的场景 ​

有序结构 ​

  • 字符串
  • 数组
  • NodeList等DOM集合
  • Map
  • Set
  • arguments

[Symbol.interator] ​

通过获取迭代器访问数据 ​

javascript
const map = new Map([['k1', 'k111111'], ['k2', 'k22222']])

const mapInterator = map[Symbol.iterator]()

console.log(mapInterator.next())

类似实现Symbol.iterator ​

迭代器的作用 ​

for....of ​

对象数据部署[Symbol.iterator] ​

迭代器模式的数据可以进行 ​

数组解构 扩展操作符 Array.from() 创建map和set Promise.all和Promise.race yield *

Generator生成器 ​

yield * 后面可以是一个有序结构,也就是部署了[Symbol.iterator]的数据 ​

使用yield重新写[Symbol.iterator] ​

使用yield遍历DOM树 ​