当前位置: 首页 > Web前端 > HTML5

深入理解ES6的《迭代器与生成器》

时间:2023-04-05 00:41:03 HTML5

什么是迭代器?在ES5中创建迭代器如下所示:functioncreateIterator(items){vari=0return{next:function(){vardone=i>=items.lengthvarvalue=!done?items[i++]:undefinedreturn{done:done,value:value}}}}variterator=createIterator([1,2,3])console.log(iterator.next())什么是生成器生成器是一个returniterator函数将在执行yield语句后自动停止执行。function*createIterator(){yield1yield2yield3}letiterator=createIterator()console.log(iterator.next())yield关键字可以返回任何值或表达式function*createIterator(items){for(leti=0;i