JavaScript循環(huán)中設(shè)置onClick參數(shù)問(wèn)題

首先看一段代碼:

```

代碼塊

···


然后運(yùn)行一下,當(dāng)時(shí)作為一名天真的js初學(xué)者理所當(dāng)然的認(rèn)為分別點(diǎn)擊不同的額按鈕粘舟,會(huì)分別的打印出0或详、1、2复罐、3、4雄家,然而事與愿為效诅,現(xiàn)實(shí)和理想總是存在差距,點(diǎn)擊不同的按鈕趟济,打印卻都是5乱投,百思不得其解,不科學(xué)扒瓯唷戚炫!

最后百度了一番才恍然大悟,原來(lái)console.log(i)里的i在循環(huán)完成的時(shí)候被賦值成了5媳纬,而每個(gè)按鈕的onclick都被賦值了同一個(gè)function,也就是說(shuō)每個(gè)function里的i指的是同一個(gè)i双肤,i=5施掏,自然每個(gè)點(diǎn)擊都會(huì)打印出5,那么該怎么解決呢茅糜?七芭!

再看接下來(lái)這段代碼:

再運(yùn)行這段代碼,就可以得到你想要的效果蔑赘,但是是為什么呢狸驳?

知道了原因就好辦了,利用閉包把每個(gè)function里的i都變成不同的i就行了缩赛,當(dāng)時(shí)作為一名初學(xué)者還不懂閉包锌历,也是后來(lái)才理解的。

循環(huán)中的function自調(diào)用峦筒,將循環(huán)中的i作為參數(shù)傳入function中究西,此時(shí),function中的i已經(jīng)不是循環(huán)中的i了(這里有點(diǎn)繞物喷,其實(shí)形參i卤材,即function里的i換成什么變量名都行),而是在內(nèi)存中開(kāi)辟了一個(gè)內(nèi)存空間存儲(chǔ)了作為參數(shù)傳進(jìn)來(lái)的i的值峦失,這樣function中的就不會(huì)隨著循環(huán)中的i的值的改變而改變了,就可以打印出你要的結(jié)果了扇丛。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市尉辑,隨后出現(xiàn)的幾起案子帆精,更是在濱河造成了極大的恐慌,老刑警劉巖隧魄,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件卓练,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡购啄,警方通過(guò)查閱死者的電腦和手機(jī)襟企,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)狮含,“玉大人顽悼,你說(shuō)我怎么就攤上這事〖钙” “怎么了蔚龙?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)映胁。 經(jīng)常有香客問(wèn)我木羹,道長(zhǎng),這世上最難降的妖魔是什么屿愚? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任汇跨,我火速辦了婚禮务荆,結(jié)果婚禮上妆距,老公的妹妹穿的比我還像新娘穷遂。我一直安慰自己,他們只是感情好娱据,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布蚪黑。 她就那樣靜靜地躺著,像睡著了一般中剩。 火紅的嫁衣襯著肌膚如雪忌穿。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,541評(píng)論 1 305
  • 那天结啼,我揣著相機(jī)與錄音掠剑,去河邊找鬼。 笑死郊愧,一個(gè)胖子當(dāng)著我的面吹牛朴译,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播属铁,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼眠寿,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了焦蘑?” 一聲冷哼從身側(cè)響起盯拱,我...
    開(kāi)封第一講書(shū)人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎例嘱,沒(méi)想到半個(gè)月后狡逢,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡拼卵,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年甚侣,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片间学。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡殷费,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出低葫,到底是詐尸還是另有隱情详羡,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布嘿悬,位于F島的核電站实柠,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏善涨。R本人自食惡果不足惜窒盐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一草则、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蟹漓,春花似錦炕横、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至嗽交,卻和暖如春卿嘲,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背夫壁。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工拾枣, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人盒让。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓梅肤,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親糯彬。 傳聞我的和親對(duì)象是個(gè)殘疾皇子凭语,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • ¥開(kāi)啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開(kāi)一個(gè)線程,因...
    小菜c閱讀 6,419評(píng)論 0 17
  • 工廠模式類似于現(xiàn)實(shí)生活中的工廠可以產(chǎn)生大量相似的商品撩扒,去做同樣的事情似扔,實(shí)現(xiàn)同樣的效果;這時(shí)候需要使用工廠模式。簡(jiǎn)單...
    舟漁行舟閱讀 7,761評(píng)論 2 17
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,133評(píng)論 25 707
  • 《ilua》速成開(kāi)發(fā)手冊(cè)3.0 官方用戶交流:iApp開(kāi)發(fā)交流(1) 239547050iApp開(kāi)發(fā)交流(2) 1...
    葉染柒丶閱讀 10,739評(píng)論 0 11
  • 大半年前的一個(gè)清早搓谆,我在上班的路上被一條微信刷屏《我買(mǎi)好了30張機(jī)票在機(jī)場(chǎng)等你:4小時(shí)后逃離北上廣》炒辉,起初以為是標(biāo)...
    郭栩鵬閱讀 392評(píng)論 2 3