为了账号安全,请及时绑定邮箱和手机立即绑定

【金秋打卡】第19天Iterator遍历器介绍

标签:
前端工具

一、课程名称:前端工程师2022版

二、课程章节:ES6语法扩展-Iterator遍历器与for...of循环

三、课程讲师:Alex

四、课程内容

Iterator遍历器

1、Iterator是什么

(1)Iterator的作用

Iterator:是遍历器(迭代器)的意思,它也是用来遍历的

https://img2.sycdn.imooc.com/636c68f50001b59b04200237.jpg 

(2)寻找Iterator

      console.log(Iterator);//报错

      console.log([1, 2][Symbol.iterator]());   //Array Iterator {}

      const it = [1,2][Symbol.iterator]();

      console.log(it);

(3)使用Iterator

      // it表示可遍历对象(可迭代对象)

      // Symbol.iterator表示可遍历对象的生成方法

      const it = [1, 2][Symbol.iterator]();

      console.log(it.next()); //{value: 1, done: false}

      console.log(it.next()); //{value: 2, done: false}

      console.log(it.next()); //{value: undefined, done: true}

      console.log(it.next()); //{value: undefined, done: true}

(4)什么是Iterator

Iterator表示一个遍历的过程:Symbol.iterator(可遍历对象的生成方法)->it(可遍历对象)-> it.next() -> it.next() ->...(直到done为true)

2、Iterator解惑

(1)为什么需要Iterator遍历器

虽然遍历数组可以用for循环和forEach方法,遍历对象可以用for in循环,但是都没有一个统一的方式,Iterator遍历器是一个统一的遍历方式。数组天生就有Iterator方法,而对象没有

    console.log([][Symbol.iterator]()); //Array Iterator {}

    console.log({}[Symbol.iterator]);   //undefined

(2)如何更方便的使用Iterator

使用Iterator需要一系列的步骤,Symbol.iterator(可遍历对象的生成方法)->it(可遍历对象)-> it.next() -> it.next() ->...(直到done为true),所以我们一般不会直接使用Iterator去遍历,而是把它作为底层的东西,将它封装起来使用,for...of就是将它封装起来使用的工具

五、课程心得

今天学习了Iterator遍历器的相关知识,刚开始虽然知道遍历是什么,但是对于Iterator遍历器的使用还是有点搞不清楚的,后面逐渐形成了对它的初步认识,相信在学习接下来的for...of的知识后,可以加深对Iterator遍历器的理解。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消