欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

JavaScript中的this有什么用

小編給大家分享一下JavaScript中的this有什么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、綏化網(wǎng)站維護(hù)、網(wǎng)站推廣。

只需要記住幾個(gè)口訣就能正確找到this的指向:

1.不管函數(shù)或者方法是如何聲明的,要看這個(gè)函數(shù)或者方法最終是誰調(diào)用的,誰最終調(diào)用這個(gè)函數(shù)或方法,那么這個(gè)函數(shù)或方法中的this就是誰,(誰點(diǎn)出來的this就是誰).

2.看執(zhí)行時(shí)而非定義時(shí),只要函數(shù)(function)沒有綁定在對象上調(diào)用,它的 this 就是 window。

3.ES6,箭頭函數(shù)中的this 會綁定上下文中的this,創(chuàng)建箭頭函數(shù)時(shí)this是誰 以后一直都是那個(gè)誰

1.普通函數(shù)中的this

一個(gè)全局函數(shù)相當(dāng)于給window對象添加了一個(gè)方法,所以第5行調(diào)用welcome函數(shù)和第6行調(diào)用welcome函數(shù)本質(zhì)是一樣的,所以welcome函數(shù)最終是window對象在調(diào)用,所以welcome函數(shù)內(nèi)部的this就指向了window對象.

JavaScript中的this有什么用

運(yùn)行結(jié)果為window  ,window.

2.作為對象的方法中的this

sayHi方法是由obj對象點(diǎn)出來調(diào)用的,所以sayHi方法中的this指向obj對象.所以輸出的是obj對象中的name的值.

JavaScript中的this有什么用

結(jié)果如下

JavaScript中的this有什么用

3.構(gòu)造函數(shù)中的this

(1)直接調(diào)用構(gòu)造函數(shù)

第3行,調(diào)用cat1函數(shù)的時(shí)候沒有用new關(guān)鍵字,那么這就意味著cat函數(shù)是window點(diǎn)出來調(diào)用的,所以Student函數(shù)中的this就是window,那么第1行第2行就是在給window添加name和age屬性,值分別是露露和12.  然后函數(shù)內(nèi)部沒有寫return關(guān)鍵字那默認(rèn)返回值是undefined.所以cat1接受到的是undefined.

JavaScript中的this有什么用

整個(gè)輸出結(jié)果如下

JavaScript中的this有什么用

(2)使用new調(diào)用構(gòu)造函數(shù)

new關(guān)鍵字會創(chuàng)建一個(gè)對象,并且會把構(gòu)造函數(shù)中的this指向這個(gè)對象,并且還會把這個(gè)對象自動返回, 那么執(zhí)行完第3行代碼, cat1就是那個(gè)new關(guān)鍵字創(chuàng)建并返回的對象.在第1行第2行也已經(jīng)給這個(gè)對象添加了name和age屬性.

JavaScript中的this有什么用

所以上面的代碼執(zhí)行結(jié)果如下:

JavaScript中的this有什么用

4.  修改函數(shù)中this的默認(rèn)指向:call、 apply、 bind

4.1.call();

語法:函數(shù)名.call(期望函數(shù)內(nèi)部this指向誰, 參數(shù)1,參數(shù)2....);

4.2.apply();

語法:函數(shù)名.apply(this的新指向 , 數(shù)組或者偽數(shù)組);

JavaScript中的this有什么用

輸出結(jié)果為:

JavaScript中的this有什么用

apply()和call()輸出結(jié)果是一樣的,區(qū)別在于apply()只有2個(gè)參數(shù),第一個(gè)參數(shù)是this的新指向,第二個(gè)參數(shù)是數(shù)組或者偽數(shù)組,調(diào)用的時(shí)候會把第二個(gè)參數(shù)(數(shù)組或偽數(shù)組)的元素依次的賦值給被調(diào)用函數(shù)的形參。

適用條件,參數(shù)是明確知道數(shù)量時(shí)用 call 。而不確定的時(shí)候用 apply,然后把參數(shù) push 進(jìn)數(shù)組傳遞進(jìn)去。

4.3.bind();

bind()方法會創(chuàng)建一個(gè)新函數(shù),當(dāng)這個(gè)click事件綁定在被調(diào)用的時(shí)候,它的 this 關(guān)鍵詞會被設(shè)置成被傳入的值(這里指調(diào)用bind()時(shí)傳入的參數(shù)).

語法:函數(shù)名.bind( this的新指向 ,可以寫參數(shù)也可以不寫參數(shù) );

用bind()的方式調(diào)用getSum()函數(shù),但是此時(shí)并不會執(zhí)行g(shù)etSum()函數(shù),而是會返回一個(gè)和getSum()函數(shù)的函數(shù)體一模一樣但是this已經(jīng)修改成obj對象的函數(shù)了,這個(gè)函數(shù)被新聲明的變量接收。 一般在this修改后才轉(zhuǎn)入實(shí)參。

javascript中的函數(shù)(普通函數(shù)、構(gòu)造函數(shù))本質(zhì)上是一個(gè)對象,是由Function()構(gòu)造函數(shù)實(shí)例化出來的對象,而call、apply、bind這三個(gè)方法都是定義在Function.prototype原型中的,那么意味著javascript中的所有函數(shù)都可以點(diǎn)出這三個(gè)方法來

5.上下文調(diào)用模式注意細(xì)節(jié):

5.1如果使用函數(shù)上下文模式調(diào)用函數(shù),第一個(gè)參數(shù)不是指向一個(gè)對象,而是指向一個(gè) 基本數(shù)據(jù)類型的值,那么函數(shù)中this的指向該類型的值?代碼如下:

JavaScript中的this有什么用

5.2哪個(gè)函數(shù)使用上下文模式調(diào)用,修改的this就是哪個(gè)函數(shù)的

JavaScript中的this有什么用

JavaScript中的this有什么用

6.函數(shù)上下文調(diào)用模式的使用場景

6.1元素都是整數(shù)的數(shù)組求最大值

6.2偽數(shù)組轉(zhuǎn)換成真數(shù)組

6.3借用構(gòu)造函數(shù)繼承

6.4 檢測數(shù)據(jù)類型

以上是“JavaScript中的this有什么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前標(biāo)題:JavaScript中的this有什么用
鏈接地址:http://aaarwkj.com/article0/ihheio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃服務(wù)器托管網(wǎng)站排名、網(wǎng)站改版營銷型網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
国产在线一区二区三区蜜桃| 久久香蕉国产线看观看亚洲| 国产精品日韩欧美亚洲| 日本在线视频精品一区| 亚洲精品网址一区二区| 国产一区黄片视频在线观看| 2020年国产97精品自拍| 日本韩国三级视频在线观看| 日韩不卡在线免费播放| 免费黄色一区二区三区| 亚洲成色在线综合剧情网站| 久久精品亚洲欧美激情| 日韩三级在线观看av| 亚洲中文字幕av天堂久久| 最新日韩精品电影在线网| 麻豆国产传媒片在线看| 亚洲欧洲中文字幕一区二区| 国产又粗又长在线视频| 国精品91人妻一区二区| 亚洲熟妇丰满多毛的大昊| 97在线观看免费播放| 成人av在线播放亚洲| 大片天天看菲色亚洲黄色| 91在线视频国产网站| 热久久精品只有这里有| 黄色录像一级大片中国的| 国产亚洲一区激情小说| 韩国成人伦理片在线观看| 亚洲免费小视频在线观看| 亚洲狠狠爱一区二区三区| 欧美日韩国内在线视频| 久久精品国产免费夜夜嗨| 青青草原在线免费视频| 国产三级黄色大片在线免费看| 欧美一区二区男人天堂| 传媒视频免费在线观看| 快播av手机在线播放| 99中文字幕国产精品| 中文字幕丝袜精品久久| 九九热九九热九九热九| 国产一区二区黄色录像|