call apply bind

????????????call?apply??bind

????????????相同點(diǎn):?都可以改變this指向?????

? ? ? ? ?不同點(diǎn):?apply的第二個(gè)參數(shù)是?數(shù)組?

? ? ? ? ?不同點(diǎn):??bind需要二次調(diào)用

????????var?obj?=?{

????????????name:'zhangsan',

????????????say:function(str,str2){

????????????????console.log(this.name+'?'+str+'?'+str2)??//?this??{name:'李二'}

????????????}

????????}

????????//?obj.say('hello')

????????//?obj.say.call({name:'李二'},'hello','world');//?obj.say?函數(shù)中的?this?變成了{(lán)name:'李二'’}

????????//?obj.say.apply({name:'李二'},['hello','world'])

???????var?f?=??obj.say.bind({name:'李二'},'hello','world');

???????f();

????????//?var?obj2?=?{

????????//?????name:'王武',

????????//?????setname:function(){

????????//?????????//?console.log(this);??//this??obj2

????????//?????????obj.say.call(this);??//?obj2:{}

????????//?????}

????????//?}

????????//?obj2.setname();

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

相關(guān)閱讀更多精彩內(nèi)容

  • call,apply和bind之間的共同點(diǎn)是都可以改變this指向 語(yǔ)法如下: ``` varobj={ name...
    親愛的旅人啊閱讀 255評(píng)論 0 0
  • this指向 關(guān)于this指向,我們可以理解為哪個(gè)對(duì)象調(diào)用函數(shù),函數(shù)里面的this指向哪個(gè)對(duì)象。 function...
    桑延_0a04閱讀 209評(píng)論 0 0
  • 一、作用 call、apply、bind作用是改變函數(shù)執(zhí)行時(shí)的上下文,簡(jiǎn)而言之就是改變函數(shù)運(yùn)行時(shí)的this指向 那...
    MrYang_b51b閱讀 136評(píng)論 0 0
  • 在JavaScript中,call、apply和bind是Function對(duì)象自帶的三個(gè)方法,本文將通過(guò)幾個(gè)場(chǎng)景的...
    gtt21閱讀 415評(píng)論 0 0
  • 一、call()和apply()方法 1.方法定義 call方法: 語(yǔ)法:call([thisObj[,arg1[...
    O你的微笑好美O閱讀 434評(píng)論 0 0

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