摘要:今天,開始正式開始搭建自己的前端學習之路,必不可少的當然就是開始搭建自己的知識庫了。好了,廢話不多說,想必大家對的方法并不陌生吧,但是你知道他是怎么實現的嗎我們自己能不能也封裝一個這樣的方法供我們自己使用呢。
今天,開始正式開始搭建自己的前端學習之路,必不可少的當然就是開始搭建自己的知識庫了。
好了,廢話不多說,想必大家對ES5的forEach方法并不陌生吧,但是你知道他是怎么實現的嗎?我們自己能不能也封裝一個這樣的方法供我們自己使用呢。
**放上簡略版代碼:** Array.prototype.forEach = function myForEach(fn = function() {}, direction) { for (let i = 0; i < this.length; i++) { // 此處寫 fn.apply(direction, [this[i], i, this])也是可以的喲 // 詳細知識就要去看apply,bind,call的相關知識點啦 // direction 代表this的指向 fn.bind(direction, [this[i], i, this])(); } } **運行示例:** // 使用 let arr = [1, 2, 3]; let arr1 = [4, 5, 6]; arr.forEach(function(item, index, a) { // this 指向arr1 console.log("this=", this) }, arr1); **涉及知識點:** 1. forEach(()=>{},direction)中第二個參數的作用(改變函數內的this指向) 2. [1,2,3].forEach(function(item,index,direction) { console.log(item); })封裝的思路在哪(this指向的是這個數組,數組要想傳入函數就要用到this關鍵字) 3. apply,this,call的使用,此處用于改變函數this指向。
前端的學習之路漫長,慢慢寫作,慢慢成長,我們一起加油哦!
這是我第一篇自己的文章,好期待一年后的我還在堅持著寫文章哪!
歡迎各位小伙伴對我批評指正,謝謝!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/103964.html
摘要:相像閉包和對象之間的關系可能不是那么明顯。一個沒有對象的編程語言可以用閉包來模擬對象。事實上,表達一個對象為閉包形式,或閉包為對象形式是相當簡單的。簡而言之,閉包和對象是狀態的同構表示及其相關功能。 原文地址:Functional-Light-JS 原文作者:Kyle Simpson-《You-Dont-Know-JS》作者 關于譯者:這是一個流淌著滬江血液的純粹工程:認真,...
摘要:獲取試讀文章高階函數高階函數就是參數為可以為,并且返回值也可為的函數。比方說,我們現在有顧客名單,但我們需要得到他們的郵箱地址我們現在不用高階函數用一個來實現它,代碼如下。 《Refactoring To Collection》 本文是翻譯Adam Wathan 的《Collection To Refactoring》的試讀篇章,這篇文章內容不多,但是可以為我們Laraver使用者能更...
摘要:語法是這樣樣子的當綁定函數被調用時,該參數會作為原函數運行時的指向。當使用對象的方法時,需要引用對象,你可能需要顯式地把綁定到回調函數以便繼續使用對象。中方法簡介備忘中的,以及中方法的使用與實現 不看不知道,一看嚇一跳,已經整整一個月沒有更新 underscore 源碼解讀系列文章了。前面我們已經完成了 Object ,Array,Collection 上的擴展方法的源碼剖析,本文開...
摘要:總結遍歷數組的時候應該盡量使用這些,靈活運用可以讓代碼更加優雅,這種盡可能使用函數和鏈式調用的風格很接近函數式編程,可以提高代碼質量。 js中有很多可以遍歷數組的API,既然已經封裝的這么好,為什么不在平常開發的時候使用,本文講講forEach、map、filter、some、every、reduce這些API的使用,并且和普通的for語句作對比。 我們以一個對象數組作為測試數據: c...
摘要:關于的實現源碼解讀,版本為。主要為路由部分。返回到的遍歷是通過尾遞歸的方式實現的,注意到被傳入的方法中,中處理事情最后向傳入,從而是否繼續遍歷取決于的實現是否調用的方法。 關于express.js的實現源碼解讀,版本為 4.14。主要為路由部分。 一個Web框架最重要的模塊是路由功能,該模塊的目標是:能夠根據method、path匹配需要執行的方法,并在定義的方法中提供有關請求和回應的...
閱讀 3108·2021-09-22 15:54
閱讀 3996·2021-09-09 11:34
閱讀 1777·2019-08-30 12:48
閱讀 1168·2019-08-30 11:18
閱讀 3439·2019-08-26 11:48
閱讀 922·2019-08-23 17:50
閱讀 2124·2019-08-23 17:17
閱讀 1249·2019-08-23 17:12