ES6 - lterator
生活随笔
收集整理的這篇文章主要介紹了
ES6 - lterator
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 迭代器(內部迭代器和外部迭代器)
- 迭代模式:
提供一種方法順序獲得集合對象中的各個元素,是一種最簡單也是最常見的設計模式,提供特定的接口。
- 內部迭代器:
本身是函數,定義好內部迭代規則,外部只需一次初始調用 ; 例如:Array.prototypr.forEach 、jQuery.each 等
- 外部迭代器:
本身是函數,執行迭代對象,迭代對象必須顯示調用,調用復雜度增加,但靈活性強
2. 外部迭代器模擬
let arr = [1,2,3]function customIterator(arr2){let i = 0let next = function(){ return {value : arr2[i],done : arr.length > ++i}}return {next}}let iter = customIterator(arr)console.log( iter.next() )console.log( iter.next() )console.log( iter.next() )// 三次打印結果如下圖3. 迭代器的目的
由于前端的快速發展,使得數據結構發生了變化,產生了特定對象或者 set、map 等數據結構,前期的 for 循環遍歷是無法迭代的,由此 lterator 就產生了,部署在各種數據結構上,使這些數據能被迭代操作。(for of、… 、Array.from)
總結
以上是生活随笔為你收集整理的ES6 - lterator的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IDempiere 富文本编辑器优化
- 下一篇: 打发时光的102个网站