JS中this指向函數(shù)的調(diào)用方法有哪些?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
10年積累的成都網(wǎng)站建設(shè)、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有彭水苗族土家族免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。創(chuàng)新互聯(lián)專注于塔什庫爾干塔吉克網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供塔什庫爾干塔吉克營銷型網(wǎng)站建設(shè),塔什庫爾干塔吉克網(wǎng)站制作、塔什庫爾干塔吉克網(wǎng)頁設(shè)計、塔什庫爾干塔吉克網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造塔什庫爾干塔吉克網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供塔什庫爾干塔吉克網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。成都創(chuàng)新互聯(lián)公司專注于天峻網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供天峻營銷型網(wǎng)站建設(shè),天峻網(wǎng)站制作、天峻網(wǎng)頁設(shè)計、天峻網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務(wù),打造天峻網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供天峻網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。初學(xué)javascript總會對this指向感到疑惑,想要深入學(xué)習(xí)javascript,必須先理清楚和this相關(guān)的幾個概念。javascript中this總是指向一個對象,但具體指向誰是在運行時根據(jù)函數(shù)執(zhí)行環(huán)境動態(tài)綁定的,而并非函數(shù)被聲明時的環(huán)境。除去不常用的with和eval的情況,具體到實際應(yīng)用中,this指向大致可以分為以下4種。
作為對象的方法調(diào)用當(dāng)函數(shù)作為對象的方法被調(diào)用時,this指向該對象:
var person = { name: 'twy', getName: function() { console.info(this === person); // 輸出true console.info(this.name); // 輸出twy } } person.getName();作為普通函數(shù)調(diào)用
當(dāng)函數(shù)作為普通的函數(shù)被調(diào)用時,非嚴(yán)格模式下this指向全局對象:
function getName(){ // 非嚴(yán)格模式 console.info(this === window); // 瀏覽器環(huán)境下輸出true } getName();
嚴(yán)格模式下this為undefined:
function getName(){ // 嚴(yán)格模式 "use strict" console.info(this === window); // 輸出false } getName();構(gòu)造器調(diào)用
當(dāng)new一個對象時,構(gòu)造器里的this指向new出來的這個對象:
function person(){ // 構(gòu)造函數(shù) this.color = 'white'; } var boy = new person(); console.info(boy.color); // 輸出whitecall或apply調(diào)用
用Function.prototype.apply或Function.prototype.call可以動態(tài)改變傳入函數(shù)的this指向:
// 聲明一個父親對象,getName方法返回父親的名字 var father = { name: 'twy', getName: function(){ return this.name; } } // 生命一個兒子對象,但是沒有返回名字的功能 var child = { name: 'chy' } console.info(father.getName()); // 輸出twy // 使用call或apply將father.getName函數(shù)里this指向child console.info(father.getName.call(child)); // 輸出chy console.info(father.getName.apply(child)); // 輸出chy
感謝各位的閱讀!看完上述內(nèi)容,你們對JS中this指向函數(shù)的調(diào)用方法有哪些大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道。
本文名稱:JS中this指向函數(shù)的調(diào)用方法有哪些-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://www.rwnh.cn/article16/cehsgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、營銷型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計公司、網(wǎng)站策劃、小程序開發(fā)、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容