Web前端架構(gòu)師高級進(jìn)階必備技能

第一章 Web 前端應(yīng)知必會之JS高薪“硬核”必備技能

第一節(jié) this 指向

透析認(rèn)識function的this在不同調(diào)用環(huán)境下的指向

事件調(diào)用環(huán)境? ?誰觸發(fā)事件,函數(shù)里面的this指向的就是誰

全局環(huán)境 1.this指向的是window,是在瀏覽器環(huán)境下;2.在node環(huán)境下console.log(this);打印的是空的對象,但是console.log(this===module.exports)。指出的是導(dǎo)出的對象

函數(shù)內(nèi)部

this最終指向的是調(diào)用它的對象

普通函數(shù)直接調(diào)用window調(diào)用

對象中的函數(shù)直接調(diào)用與window

【函數(shù)被多層對象所包含,如果函數(shù)被最外層對象調(diào)用,this指向的也只是它上一級的對象】

多層對象中函數(shù)的this指向

對象中函數(shù)被賦值給另一個變量

【構(gòu)造函數(shù)中的this指向的是實例對象】

構(gòu)造函數(shù)中的this指向

new運(yùn)算符的作用

如果構(gòu)造函數(shù)中有return 如果return的值對象,this指向返回的對象,如果不是對象,則this指向保持原來的規(guī)則,在這里null比較特殊


了解函數(shù)中的this指向的特殊性


箭筒函數(shù)本身是沒有this和arguments的,在箭頭函數(shù)中引用this實際上調(diào)用的是定義是的上一層作用域的this。這里強(qiáng)調(diào)一下是上一層作用域,因?qū)ο蟛荒苄纬瑟?dú)立的作用域的。

這塊的this指向的window

如何改變this指向


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

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

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