日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ES6 - lterator

發布時間:2024/3/12 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。