lterator遍历
?iterator是一種接口機(jī)制,為各種不同的數(shù)據(jù)結(jié)構(gòu)提供統(tǒng)一的訪問機(jī)制
作用:
1、為各種數(shù)據(jù)結(jié)構(gòu),提供一個(gè)統(tǒng)一的、簡便的訪問接口;
2、使得數(shù)據(jù)結(jié)構(gòu)的成員能夠按某種次序排列
3、ES6創(chuàng)造了一種新的遍歷命令for...of循環(huán),Iterator接口主要供for...of消費(fèi)。
工作原理:
- 創(chuàng)建一個(gè)指針對(duì)象,指向數(shù)據(jù)結(jié)構(gòu)的起始位置。
- 第一次調(diào)用next方法,指針自動(dòng)指向數(shù)據(jù)結(jié)構(gòu)的第一個(gè)成員
- 接下來不斷調(diào)用next方法,指針會(huì)一直往后移動(dòng),直到指向最后一個(gè)成員
- 每調(diào)用next方法返回的是一個(gè)包含value和done的對(duì)象,{value: 當(dāng)前成員的值,done: 布爾值}
* value表示當(dāng)前成員的值,done對(duì)應(yīng)的布爾值表示當(dāng)前的數(shù)據(jù)的結(jié)構(gòu)是否遍歷結(jié)束。
* 當(dāng)遍歷結(jié)束的時(shí)候返回的value值是undefined,done值為false
原生具備iterator接口的數(shù)據(jù)(可用for of遍歷)
1、Array
2、arguments
3、set容器
4、map容器
5、String
總結(jié)
以上是生活随笔為你收集整理的lterator遍历的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uniapp开发聊天APP踩坑记录
- 下一篇: python画饼图函数_python的m