迭代器模式
可以把有些结构称为”可迭代对象“,因为他们实现了正式的Iterable接口。而且可以通过Iterator进行消费
可迭代对象不仅限于数组,也可以是具有类似数组行为的其他数据结构
可迭代协议
实现Iterable接口的内置类型
字符串、数组、映射、arguments对象、NodeList等DOM集合类型
接收可迭代对象的原生语言
for-of循环、数组解构、拓展操作符、Array.from()、创建集合、Promise.all()接受由期约组成的可迭代对象、Promise.race()、yield*操作符
迭代器协议