国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

ES6 Iterator接口和for...of循環用法分析

2024-05-06 16:53:52
字體:
來源:轉載
供稿:網友

本文實例講述了ES6 Iterator接口和for...of循環用法。分享給大家供大家參考,具體如下:

<script>// 數組已經幫我們內置這個Iterator接口let arr = ['hello','world'];let map = arr[Symbol.iterator](); // 數組直接調用iterator接口,返回一個對象mapconsole.log(map.next()); // {value: "hello", done: false} done:循環沒有下一步狀態:true沒有,false:有狀態,循環并沒有結束console.log(map.next()); // {value: "world", done: false}console.log(map.next()); // {value: undefined, done: true}</script>

運行結果:

ES6,Iterator,for,循環

for...of循環,就是不斷的調用Iterator接口。

object數據結構沒有實現Iterator接口。

自定義實現object的Iterator接口

<script>let obj ={  start: [1,5,7],  end:[8,4,3],  [Symbol.iterator](){   let self = this;   let index = 0;   let arr = self.start.concat(self.end);   let len = arr.length;   return {    next(){     if(index<len){      return{       value:arr[index++],       done:false      }     }else{      return {       value:arr[index++],       done:true      }     }    }   }  }}for(let key of obj){ // for...of 背后用的就是iterator接口  console.log(key); // 1 5 7 8 4 3}</script>

運行結果:

ES6,Iterator,for,循環

<script>let arr = ['xixiaoxian','jamin'];for(let value of arr){  console.log(value); // xixiaoxian  jamin}</script>

運行結果:

ES6,Iterator,for,循環

希望本文所述對大家JavaScript程序設計有所幫助。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洪江市| 将乐县| 牡丹江市| 德庆县| 康定县| 麻阳| 郎溪县| 巴东县| 桐梓县| 秦安县| 陕西省| 同德县| 景谷| 六盘水市| 太白县| 东兰县| 长岭县| 长子县| 阿克| 翁牛特旗| 台江县| 海兴县| 淅川县| 宁蒗| 区。| 靖州| 四子王旗| 和政县| 台中县| 宁德市| 尉氏县| 宜黄县| 漳平市| 徐水县| 和林格尔县| 湖南省| 邹平县| 高州市| 赤城县| 桑日县| 黄浦区|