<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
        問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
        當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

        JavaScript中的apply/call/bind和this

        來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 20:24:38
        文檔

        JavaScript中的apply/call/bind和this

        JavaScript中的apply/call/bind和this:apply/call/bind三者的聯(lián)系就在于,都可以用來(lái)改變函數(shù)中 this 指向的值,且第一個(gè)參數(shù)為要指向的 this 的值,apply的第二個(gè)參數(shù)(或 bind 與 call 的不定參數(shù))為要傳入的參數(shù)。這就不得不提及 javascript 中函數(shù)的 this 的指向了。下面我們來(lái)簡(jiǎn)單
        推薦度:
        導(dǎo)讀JavaScript中的apply/call/bind和this:apply/call/bind三者的聯(lián)系就在于,都可以用來(lái)改變函數(shù)中 this 指向的值,且第一個(gè)參數(shù)為要指向的 this 的值,apply的第二個(gè)參數(shù)(或 bind 與 call 的不定參數(shù))為要傳入的參數(shù)。這就不得不提及 javascript 中函數(shù)的 this 的指向了。下面我們來(lái)簡(jiǎn)單

        apply/call/bind三者的聯(lián)系就在于,都可以用來(lái)改變函數(shù)中 this 指向的值,且第一個(gè)參數(shù)為要指向的 this 的值,apply的第二個(gè)參數(shù)(或 bind 與 call 的不定參數(shù))為要傳入的參數(shù)。這就不得不提及 javascript 中函數(shù)的 this 的指向了。下面我們來(lái)簡(jiǎn)單探討下

        fun.apply(context,[argsArray])

        立即調(diào)用fun,同時(shí)將fun函數(shù)原來(lái)的this指向傳入的新context對(duì)象,實(shí)現(xiàn)同一個(gè)方法在不同對(duì)象上重復(fù)使用。

        context:傳入的對(duì)象,替代fun函數(shù)原來(lái)的this;

        argsArray:一個(gè)數(shù)組或者類(lèi)數(shù)組對(duì)象,其中的數(shù)組參數(shù)會(huì)被展開(kāi)作為單獨(dú)的實(shí)參傳給 fun 函數(shù),需要注意參數(shù)的順序。

        fun.call(context,[arg1],[arg2],[…])

        同apply,只是參數(shù)列表不同,call的參數(shù)需要分開(kāi)一個(gè)一個(gè)傳入。如果不知道參數(shù)個(gè)數(shù),則使用apply。

        使用:

        Math.max() //只接收單獨(dú)的參數(shù),通過(guò)下面的方法可以在數(shù)組上面使用max方法:
        Math.max.apply(null, array); //會(huì)將array數(shù)組參數(shù)展開(kāi)成單獨(dú)的參數(shù)再傳入
        Array.prototype.push.apply(arr1,arr2); //將一個(gè)數(shù)組拆開(kāi)push到另一個(gè)數(shù)組中;不用apply則會(huì)將后續(xù)數(shù)組參數(shù)當(dāng)成一個(gè)元素push進(jìn)去。
        Array.prototype.slice.call(arguments); //在類(lèi)素組對(duì)象上使用slice方法


        fun.bind(context,[arg1],[arg2],[…])

        使fun方法執(zhí)行的context永不變。

        arg1:要傳遞到新函數(shù)的參數(shù)列表

        返回一個(gè)函數(shù)供后續(xù)調(diào)用,其函數(shù)體和原函數(shù)fun一樣,但新函數(shù)的this指向新傳入的context對(duì)象。新函數(shù)會(huì)具有bind方法指定的初始參數(shù)arg1/arg2...,后續(xù)調(diào)用新函數(shù)時(shí)的實(shí)參要往已有參數(shù)的后面排。

        事件處理函數(shù)中使用bind:

        使用bind()方法改寫(xiě)slice()方法:

        bind()兼容Ie5~ie8處理

        一般情況下setTimeout()的this指向window或global對(duì)象。當(dāng)使用類(lèi)的方法時(shí)需要this指向類(lèi)實(shí)例,就可以使用bind()將this綁定到調(diào)用對(duì)象,而不用傳入self方式傳入this。

        this

        this對(duì)象是在函數(shù)運(yùn)行時(shí)基于函數(shù)的執(zhí)行環(huán)境綁定的:在全局函數(shù)中,this等于window,而當(dāng)函數(shù)被當(dāng)作某個(gè)對(duì)象的方法調(diào)用時(shí),this等于那個(gè)對(duì)象。

        判斷方法:this和定義在哪兒無(wú)關(guān),函數(shù)運(yùn)行時(shí),如果有. 運(yùn)算符,this指.前的對(duì)象;如果沒(méi)有,this指window。若new關(guān)鍵字調(diào)用時(shí),指代新對(duì)象。有apply/call/bind時(shí),指代第一個(gè)參數(shù)。

        在一個(gè)HTML DOM事件處理程序里面,this始終指向這個(gè)處理程序被所綁定到的DOM節(jié)點(diǎn)。

        更多JavaScript中的apply/call/bind和this相關(guān)文章請(qǐng)關(guān)注PHP中文網(wǎng)!

        聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        JavaScript中的apply/call/bind和this

        JavaScript中的apply/call/bind和this:apply/call/bind三者的聯(lián)系就在于,都可以用來(lái)改變函數(shù)中 this 指向的值,且第一個(gè)參數(shù)為要指向的 this 的值,apply的第二個(gè)參數(shù)(或 bind 與 call 的不定參數(shù))為要傳入的參數(shù)。這就不得不提及 javascript 中函數(shù)的 this 的指向了。下面我們來(lái)簡(jiǎn)單
        推薦度:
        標(biāo)簽: call js this
        • 熱門(mén)焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門(mén)推薦

        專(zhuān)題
        Top
        主站蜘蛛池模板: 最近中文字幕免费mv视频8| 黄视频在线观看免费| 亚洲av综合av一区二区三区| 亚洲av纯肉无码精品动漫| 和老外3p爽粗大免费视频| 亚洲国产精品13p| 久久精品国产亚洲AV果冻传媒| 日韩亚洲不卡在线视频中文字幕在线观看| 国产精品亚洲精品爽爽| 67194国产精品免费观看| 亚洲美女高清一区二区三区 | 亚洲国产一区二区三区| 免费观看亚洲人成网站| 亚洲一区精品伊人久久伊人| 91亚洲一区二区在线观看不卡| 免费VA在线观看无码| 成人毛片18岁女人毛片免费看| 亚洲av永久中文无码精品综合 | 国产AV旡码专区亚洲AV苍井空| 女人18毛片水真多免费播放| 久久亚洲AV无码精品色午夜麻| 狠狠综合亚洲综合亚洲色| www.999精品视频观看免费| 亚洲乱码国产乱码精品精| 色吊丝免费观看网站| 免费理论片51人人看电影| 久久精品国产亚洲av水果派| 99久久精品毛片免费播放| 亚洲AⅤ视频一区二区三区| 亚洲AV成人精品一区二区三区| 成人伊人亚洲人综合网站222| 中文字幕在线免费看线人| 亚洲人成网站在线播放影院在线| 中国黄色免费网站| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 波多野结衣免费视频观看| 亚洲av永久无码精品秋霞电影秋 | 久久久久国色AV免费观看| 亚洲精品午夜在线观看| 1000部啪啪未满十八勿入免费| 亚洲人成电影网站色www|