在JavaScript中,
迭代器是一种允许我们遍历集合中元素的对象。迭代器对象具有一个next()方法,该方法返回value和done。value是当前迭代的值,done属性是一个布尔值,表示是否到达了集合的末尾。
迭代器协议
一个迭代器对象必须具备以下特性:
-
next()方法:每次调用返回一个对象,其结构为{value:...,done:...}。如果迭代完成,value可能是任意值,done则为true。 - 可选的
return()方法:允许提前终止迭代,其可选地返回一个值。 - 可选的
throw()方法:允许在迭代过程中抛出错误。
创建迭代器
使用Symbol.iterator来实现迭代器。
生成器函数
生成器函数是实现迭代器的一种更简便的方式。生成器函数使用function*语法定义,并且可以使用yield关键字来产生一系列值。当生成器函数被调用时,它返回一个迭代器对象,该对象可以使用next()方法来迭代。

被折叠的 条评论
为什么被折叠?



