第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

this指向問(wèn)題

this指向問(wèn)題

守候你守候我 2019-01-30 14:26:29
var x = 1;var kit = {    x: 2,    buf: {        x: 3,        fac: function() {            return this.x;        }    }}var kbf = kit.buf.fac;console.log(kbf());//1console.log(kit.buf.fac());//3不明白這兩個(gè)的區(qū)別?kbf()調(diào)用的this指向什么?kit.buf.fac()的this指向什么?求大神們賜教
查看完整描述

1 回答

?
達(dá)令說(shuō)

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

查看完整回答
反對(duì) 回復(fù) 2019-01-31
  • 1 回答
  • 0 關(guān)注
  • 403 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)