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

為了賬號安全,請及時綁定郵箱和手機立即綁定

特別不明白這里的this是什么??為什么要這么用??

for(var i=0;i<oLis.length;i++){

? ? ? ? oLis[i].index=i;

? ? ? ? oLis[i].onclick=function(){

? ? ? ? ? for(var n=0;n<oLis.length;n++){

? ? ? ? ? ? ? oLis[n].className="";

? ? ? ? ? ? ? oDivs[n].className="hide";

? ? ? ? ? }

? ? ? ? ? this.className="on";

? ? ? ? ? oDivs[this.index].className="";

? ? ? ? }

? ? }

看到有人解釋為調(diào)用函數(shù)的對象,那這里調(diào)用函數(shù)的對象是oLis[i],為什么把this換成oLis[i]卻布恩那個正常顯示呢?

oDivs[this.index].className="";里面的this.index為什么不能直接寫成i呢??

正在回答

4 回答

發(fā)生點擊事件的當(dāng)前對象

0 回復(fù) 有任何疑惑可以回復(fù)我~

這里的 ? this.className="on";?oDivs[this.index].className=""跟這兩句都是在點擊事件的function()里面引發(fā),而外面的for循環(huán)i的值在點擊事件的函數(shù)體里面是調(diào)用不到的,所以要在定義一個變量來存放i的值,然后當(dāng)點擊事件產(chǎn)生的時候我們就可以調(diào)用到index的值也就是i的值,你可以試下在函數(shù)體里面alert(i);把i的值打印出來看下,你會發(fā)現(xiàn)都是-1,因為i根本就不在,這個我就忘記跟剛才那個人說了。

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕粉1469604703 提問者

這里的返回值應(yīng)該是3吧。。。
2016-09-12 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕粉1469604703 提問者

非常感謝,好像有一點兒明白了。
2016-09-12 回復(fù) 有任何疑惑可以回復(fù)我~
#3

小丑魚yang

我們想要的返回值就是i的值,可是function里面是調(diào)用不到i的值的,所以我們只能定義一個變量來存放i的值。
2016-09-12 回復(fù) 有任何疑惑可以回復(fù)我~

就是當(dāng)前這個調(diào)用對象

0 回復(fù) 有任何疑惑可以回復(fù)我~

for里面如果嵌套有函數(shù),那么在那個函數(shù)里面的 i 實際上的值就等于 oLis.length?

所以,在那個函數(shù)里面oLis[i] 一直都是最后一個,這樣就得不到想要的結(jié)果了。

用this的話就能避免這個問題,因為this就是當(dāng)前調(diào)用它的對象

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

劉毅毅

請問為什么for嵌套函數(shù)會這樣?還有就是這里是onlick觸發(fā)的函數(shù),沒有觸發(fā)時函數(shù)會不會隨著for循環(huán)運行呢?
2016-11-13 回復(fù) 有任何疑惑可以回復(fù)我~
#2

湛心 回復(fù) 劉毅毅

為什么用this而不用i,主要是一個作用域的問題,等你學(xué)會作用域,你的問題就不需要我解釋了
2016-11-16 回復(fù) 有任何疑惑可以回復(fù)我~
#3

劉毅毅 回復(fù) 湛心

哦。這個問題差不多知道了。正在學(xué)習(xí)中
2016-11-16 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學(xué)習(xí)       468771    人
  • 解答問題       22474    個

本課程從如何插入JS代碼開始,帶您進入網(wǎng)頁動態(tài)交互世界

進入課程

特別不明白這里的this是什么??為什么要這么用??

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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