国产探花免费观看_亚洲丰满少妇自慰呻吟_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教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 石楼县| 齐齐哈尔市| 射洪县| 武强县| 河东区| 鹤山市| 周至县| 新和县| 天水市| 边坝县| 铜陵市| 大关县| 嘉兴市| 永川市| 商水县| 康马县| 惠来县| 纳雍县| 衡阳市| 丰顺县| 双峰县| 浏阳市| 秭归县| 白山市| 武川县| 古丈县| 基隆市| 湘阴县| 贺兰县| 大田县| 阜新| 冀州市| 开原市| 尼勒克县| 宜兴市| 平和县| 宜君县| 神农架林区| 建湖县| 自贡市| 平罗县|