淺析javascript中bind()方法的使用與實現(xiàn)

淺析javascript中bind()方法的使用與實現(xiàn)

ID:30517222

大?。?8.67 KB

頁數(shù):9頁

時間:2018-12-31

淺析javascript中bind()方法的使用與實現(xiàn)_第1頁
淺析javascript中bind()方法的使用與實現(xiàn)_第2頁
淺析javascript中bind()方法的使用與實現(xiàn)_第3頁
淺析javascript中bind()方法的使用與實現(xiàn)_第4頁
淺析javascript中bind()方法的使用與實現(xiàn)_第5頁
資源描述:

《淺析javascript中bind()方法的使用與實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關內容在應用文檔-天天文庫。

1、我真正系統(tǒng)地接觸和學習黨的基本知識是在這次中級黨校的培訓班上。通過學習,了解了黨的發(fā)展歷程,對黨的性質、宗旨、任務等基本知識有了進一步的了解淺析Javascript中bind()方法的使用與實現(xiàn)  下面小編就為大家?guī)硪黄獪\析Javascript中bind()方法的使用與實現(xiàn)。小編覺得挺不錯的,現(xiàn)在分享給大家,一起跟隨小編過來看看吧  在討論bind()方法之前我們先來看一道題目:  varaltwrite=document.write;?  altwrite("hello");?  //1.以上代碼有什么問題  //2.正確操作是怎樣的  //3.bin

2、d()方法怎么實現(xiàn)  對于上面這道題目,答案并不是太難,主要考點就是this指向的問題,altwrite()函數(shù)改變this的指向global或window對象,導致執(zhí)行時提示非法調用異常,正確的方案就是使用bind()方法:  altwrite.bind(document)("hello")?  當然也可以使用call()方法:  altwrite.call(document,"hello")?  本文的重點在于討論第三個問題bind()方法的實現(xiàn),在開始討論bind()的實現(xiàn)之前,我們先來看看bind()方法的使用:  綁定函數(shù)對黨的認識也有了進一步的

3、提高。才真正體會到了中國共產(chǎn)黨的偉大、光榮和正確,更感到只有中國共產(chǎn)黨是全中國最廣大人民利益的忠實代表我真正系統(tǒng)地接觸和學習黨的基本知識是在這次中級黨校的培訓班上。通過學習,了解了黨的發(fā)展歷程,對黨的性質、宗旨、任務等基本知識有了進一步的了解  bind()最簡單的用法是創(chuàng)建一個函數(shù),使這個函數(shù)不論怎么調用都有同樣的this值。常見的錯誤就像上面的例子一樣,將方法從對象中拿出來,然后調用,并且希望this指向原來的對象。如果不做特殊處理,一般會丟失原來的對象。使用bind()方法能夠很漂亮的解決這個問題:  this.num=9;?  varmymodul

4、e={?  ?num:81,  ?getNum:function(){returnthis.num;}  };  module.getNum();//81  vargetNum=module.getNum;?  getNum();//9,因為在這個例子中,"this"指向全局對象  //創(chuàng)建一個'this'綁定到module的函數(shù)  varboundGetNum=getNum.bind(module);?  boundGetNum();//81?  偏函數(shù)(PartialFunctions)  PartialFunctions也叫PartialApplic

5、ations,這里截取一段關于偏函數(shù)的定義:  Partialapplicationcanbedescribedastakingafunctionthatacceptssomenumberofarguments,binding對黨的認識也有了進一步的提高。才真正體會到了中國共產(chǎn)黨的偉大、光榮和正確,更感到只有中國共產(chǎn)黨是全中國最廣大人民利益的忠實代表我真正系統(tǒng)地接觸和學習黨的基本知識是在這次中級黨校的培訓班上。通過學習,了解了黨的發(fā)展歷程,對黨的性質、宗旨、任務等基本知識有了進一步的了解valuestooneormoreofthosearguments,a

6、ndreturninganewfunctionthatonlyacceptstheremaining,un-boundarguments.  這是一個很好的特性,使用bind()我們設定函數(shù)的預定義參數(shù),然后調用的時候傳入其他參數(shù)即可:  functionlist(){?  ?returnArray.prototype.slice.call(arguments);  }  varlist1=list(1,2,3);//[1,2,3]  //預定義參數(shù)37  varleadingThirtysevenList=list.bind(undefined,37);

7、  varlist2=leadingThirtysevenList();//[37]?  varlist3=leadingThirtysevenList(1,2,3);//[37,1,2,3]?  和setTimeout一起使用  一般情況下setTimeout()的this指向window或global對象。當使用類的方法時需要this指向類實例,就可以使用bind()將this綁定到回調函數(shù)來管理實例?! unctionBloomer(){?  ?this.petalCount=Math.ceil(Math.random()*12)+1;對黨的認識也

8、有了進一步的提高。才真正體會到了中國共產(chǎn)黨的偉大、光榮和正確,更感

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現(xiàn)內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。