亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

apply&&call&&bind

whataa / 3597人閱讀

摘要:用來改變函數(shù)的對(duì)象的指向都是用來改變函數(shù)的對(duì)象的指向的。后面的參數(shù)是調(diào)用方法的參數(shù)。都可以利用后續(xù)參數(shù)傳參。

用來改變函數(shù)的this對(duì)象的指向

都是用來改變函數(shù)的this對(duì)象的指向的。

第一個(gè)參數(shù)都是this要指向的對(duì)象。

后面的參數(shù)是調(diào)用方法的參數(shù)。

都可以利用后續(xù)參數(shù)傳參。

var xw={
    name: "小王",
    gender: "男",
    age: 24,
    say: function(){
        alert(this.name+" , "+this.gender+" ,今年"+this.age);
    }
}
var xh={
    name: "小紅",
    gender: "女",
    age: 18
}
xw.say();

調(diào)用:

xw.say.call(xh);
xw.say.apply(xh);
// call和apply都是對(duì)函數(shù)的直接調(diào)用,而bind方法返回的仍然是一個(gè)函數(shù)
xw.say.bind(xh)();

在有參數(shù)的情況下call和apply產(chǎn)生區(qū)別:

var xw={
    name: "小王",
    gender: "男",
    age: 24,
    say: function(school,grade){
        alert(this.name+" , "+this.gender+" ,今年"+this.age+" ,在"+school+"上"+grade);
    }
}
var xh={
    name: "小紅",
    gender: "女",
    age: 18
}

調(diào)用形式:

call以及bind后面的參數(shù)與say方法中是一一對(duì)應(yīng)的

apply的第二個(gè)參數(shù)是一個(gè)數(shù)組,數(shù)組中的元素是和say方法中一一對(duì)應(yīng)的

xw.say.call(xh,"實(shí)驗(yàn)小學(xué)","六年級(jí)");    
xw.say.apply(xh,["實(shí)驗(yàn)小學(xué)","六年級(jí)"]);
xw.say.bind(xh,"實(shí)驗(yàn)小學(xué)","六年級(jí)")();

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/93602.html

相關(guān)文章

  • JS系列之call & apply & bind

    摘要:參考鏈接在中,和是對(duì)象自帶的三個(gè)方法,都是為了改變函數(shù)體內(nèi)部的指向。返回值是函數(shù)方法不會(huì)立即執(zhí)行,而是返回一個(gè)改變了上下文后的函數(shù)。而原函數(shù)中的并沒有被改變,依舊指向全局對(duì)象。原因是,在中,多次是無效的。 參考鏈接:https://juejin.im/post/59bfe8... 在JavaScript中,call、apply和bind是Function對(duì)象自帶的三個(gè)方法,都是為了改變...

    xiaochao 評(píng)論0 收藏0
  • call&apply&bind的js實(shí)現(xiàn)以及應(yīng)用

    摘要:實(shí)現(xiàn)使用是這樣轉(zhuǎn)換的生成新的函數(shù),新的執(zhí)行上下文通過在傳入對(duì)象中增加調(diào)用方法執(zhí)行被改變,得恢復(fù)原來的值實(shí)現(xiàn)在這里,我們看到了一個(gè)有趣的現(xiàn)象,在中可以傳入數(shù)組兩大作用改變借用其他對(duì)象的方法改變?nèi)绾螌?shí)現(xiàn)執(zhí)行借用其他對(duì)象的方法繼承的實(shí)現(xiàn)執(zhí)行能借用 js實(shí)現(xiàn)call // example let obj = { a: 124, b: ccc }; function fn(c) ...

    mgckid 評(píng)論0 收藏0
  • JS手寫bind之處理new的情況詳解

      你有遇見過給bind返回的函數(shù)做new操作的場(chǎng)景,本篇主要講述的就是實(shí)現(xiàn)一下兼容new操作的bind寫法,順便學(xué)習(xí)一下new操作符,為大家提供下參考。  大家可以去看下關(guān)于 JS 中 bind 方法的實(shí)現(xiàn)的文章,并給出了實(shí)現(xiàn):  Function.prototype.myBind=function(thisArg,...prefixArgs){   constfn=this;   return...

    3403771864 評(píng)論0 收藏0
  • 《javascript高級(jí)程序設(shè)計(jì)》函數(shù)調(diào)用模式 & this深度理解

    在上一篇文章(《javascript高級(jí)程序設(shè)計(jì)》筆記:Function類型)中稍微提及了一下函數(shù)對(duì)象的屬性—this,在這篇文章中有深入的說明: 函數(shù)的三種簡(jiǎn)單調(diào)用模式 1 函數(shù)模式 定義的函數(shù),如果單獨(dú)調(diào)用,不將其與任何對(duì)象關(guān)聯(lián),那么就是函數(shù)調(diào)用模式 function fn(num1, num2) { console.log(this); } // 直接在全局調(diào)用 fn();// w...

    wyk1184 評(píng)論0 收藏0
  • Hard binding & Soft binding detailed explanati

    摘要:硬綁定會(huì)大大降低函數(shù)的靈活性,使用硬綁定之后就無法使用像隱式綁定或顯示綁定來修改。如果可以給默認(rèn)綁定指定一個(gè)全局對(duì)象和意外的值,那就可以實(shí)現(xiàn)和硬綁定相同的效果,同時(shí)保留隱式綁定或顯示綁定修改的能力。 JavaScript中硬綁定與軟綁定詳解 JS中硬綁定這種方式可以把this強(qiáng)制綁定到指定的對(duì)象(除了使用new時(shí)),防止函數(shù)調(diào)用時(shí)應(yīng)用默認(rèn)綁定規(guī)則(非嚴(yán)格模式下全局對(duì)象-window| ...

    xiyang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<