前端工程师不得不知道的ES6新特性(四)

本文详细解析了如何通过for-of循环遍历Set和Map等集合对象,并介绍了其背后的迭代器原理。通过调用[Symbol.iterator]方法获取迭代器对象,for-of循环能够逐次调用.next()方法来获取集合中的每一个元素。

四,迭代器

想要循环遍历Set,Map对象,我们就需要使用for-of方法来遍历它们。那么为什么for-of方法可以实现该功能呢,这就需要我们深入了解for-of方法。这就与我们要说的迭代器有关。

for-of 循环首先调用集合的[Symbol.iterator]()方法,紧接着返回一个新的迭代器对象。迭代器对象可以是任意具有.next()方法的对象;for-of 循环将重复调用这个方法, 每次循环调用一次。每一次调用.next()方法,它都返回相同的结果,返回给 for-of 循环的结果有两种

1. 未完成迭代;

2. 下一个值为 0。这意味着(value of zeroesForeverIterator) {}将会是一个无限循环。 

 举个简单的例子

006zipb5zy78Rf5X9Kn37&690

转载于:https://my.oschina.net/u/2971691/blog/841101

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值