javascript中call()、apply()的區(qū)別
call()、apply()的區(qū)別:
相同點(diǎn):
1.call()和apply()都可以用來間接調(diào)用函數(shù),都可以顯式調(diào)用所需的this。即,任何函數(shù)可以作為任何對(duì)象的方法來調(diào)用。
2.兩個(gè)方法都可以指定調(diào)用實(shí)參。
區(qū)別:
call()和apply()的基本區(qū)別:在于將參數(shù)傳遞給函數(shù)。
call():使用其自有的實(shí)參列表作為函數(shù)的參數(shù);
apply():要求以數(shù)組的形式傳入?yún)?shù)。
function track(o,m){ var original =o[m]; o[m] =function( ){ console.log(new Date(),m); var results =original.apply(this,arguments); console.log(new Date(),m); return results; } }
它們的用法可以通過給定的例子進(jìn)行說明:
<script> var someObject = { myProperty:'Foo', myMethod:function (prefix,posfix) { console.log(prefix + this.myProperty + posfix); } }; someObject.myMethod('<','>');//Foo var someOtherObject = { myProperty:'Bar' }; someObject.myMethod.call(someOtherObject,'<','>');//Bar someObject.myMethod.apply(someOtherObject,['<','>']);//Bar </script>
以上所述是小編給大家介紹的javascript中call()、apply()的區(qū)別詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- JavaScript中的this/call/apply/bind的使用及區(qū)別
- js中apply和call的理解與使用方法
- javascript中call,apply,callee,caller用法實(shí)例分析
- JS中call()和apply()的功能及用法實(shí)例分析
- js的繼承方法小結(jié)(prototype、call、apply)(推薦)
- js中apply()和call()的區(qū)別與用法實(shí)例分析
- JavaScript函數(shù)apply()和call()用法與異同分析
- 詳解JS中的this、apply、call、bind(經(jīng)典面試題)
- Javascript call及apply應(yīng)用場(chǎng)景及實(shí)例
相關(guān)文章
一篇文章告訴你JavaScript的作用域和函數(shù)該這樣理解
這篇文章主要為大家詳細(xì)介紹了JavaScript的作用域和函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02JavaScript Try...Catch 聲明的 使用方法
JavaScript Try...Catch 聲明的 使用方法...2007-04-04JavaScript fontsize方法入門實(shí)例(按照指定的尺寸來顯示字符串)
這篇文章主要介紹了JavaScript fontsize方法入門實(shí)例,fontsize方法用于按照指定的尺寸來顯示字符串,需要的朋友可以參考下2014-10-10Three.js源碼閱讀筆記(基礎(chǔ)的核心Core對(duì)象)
Three.js是一個(gè)比較偉大的webgl開源庫(kù),它簡(jiǎn)化了瀏覽器3D編程,使得使用JavaScript在瀏覽器中創(chuàng)建復(fù)雜的場(chǎng)景變得容易很多接下來先從最基礎(chǔ)的核心(Core)對(duì)象開始,感興趣的朋友可以參考下2012-12-12JavaScript學(xué)習(xí)筆記之JS事件對(duì)象
本文介紹了javascript的事件對(duì)象的相關(guān)資料,需要的朋友可以參考下2015-01-01