1 回答

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊
首先你全局定義了kbf,此時(shí)它的執(zhí)行環(huán)境是window也就是全局,那么當(dāng)你把kit.buf.fac賦給kbf的時(shí)候,通過(guò)kbf去調(diào)用這個(gè)對(duì)象的時(shí)候,fac這個(gè)函數(shù)的執(zhí)行環(huán)境也就變成了window,那么當(dāng)執(zhí)行return this.x的時(shí)候,瀏覽器會(huì)去查找全局的x而不是kit的局部x。
而當(dāng)你通過(guò)buf去調(diào)用它的屬性fac的時(shí)候,因?yàn)閎uf是kit內(nèi)部的一個(gè)屬性,執(zhí)行環(huán)境在kit內(nèi),那么當(dāng)執(zhí)行到return this.x的時(shí)候,它會(huì)先在內(nèi)部找x,如果內(nèi)部無(wú)x,則會(huì)找外部,直到全局。在這里,內(nèi)部有局部x,所以返回的是局部x的值。
這是我直接的理解,可能有些地方說(shuō)的不對(duì),能理解最好把。建議你去看看高程的this和你不知道的this
添加回答
舉報(bào)