迭代器模式在前端的使用場景

一、迭代器模式在Redux源碼中的使用

二、迭代器模式在Koa2源碼中的使用

場景一、二都是利用迭代器模式,依次調(diào)用中間件,從而實(shí)現(xiàn)各個框架中的洋蔥模型。

三、 迭代器模式在Webpack源碼中的使用

簡單解釋下,實(shí)參modulesData是從入口文件出發(fā),通過遞歸分析得到的,所有依賴文件的集合,其格式如下:

四、迭代器模式在es6中是使用

es6中之所以可以實(shí)現(xiàn)數(shù)組的擴(kuò)展運(yùn)算符以及for..of循環(huán),是因?yàn)槠鋬?nèi)部定義了一個[Symbol.iterator]屬性,這個屬性的value是一個函數(shù)(迭代函數(shù)),其大致實(shí)現(xiàn)如下:

五、其他

這里只是舉幾個簡單的例子,其實(shí)迭代器模式在前端領(lǐng)域還有非常廣泛的應(yīng)用,比如vue-router中各個導(dǎo)航守衛(wèi)的依次調(diào)用、async&await函數(shù)的實(shí)現(xiàn)等。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容