< ボタン>按钮0 </ ボタン> < ボタン>按钮1 </ ボタン> < ボタン>按钮2 </ ボタン> < ボタン>按钮3 </ ボタン> < ボタン>按钮4 </ ボタン> < ボタン>按钮5 </ ボタン> < ボタン>按钮6 </ ボタン> < ボタン>ボタン7 </ボタン> < ボタン>按钮8 </ ボタン> < ボタン>按钮9 </ ボタン>
@ デマンド:印刷するには、ボタンに対応するボタンをクリックしてください添字 VAR btns = document.querySelectorAll( 'ボタン' ) // メソッド:クロージャを使用していない ため(VAR I = 0;私はbtns.lengthを<;私は++ ){ btns [I] .INDEX = I; btns [I] .onclick = 関数(){ // はconsole.log(I) はconsole.log(この.INDEX); } } // クロージャの特性:関数内に埋め込ま従ってクロージャ形成、他の関数、関数参照外部関数内のローカル変数を設定 @ クロージャの2つの VAR btns = document.querySelectorAll(「ボタン」) のための(VARをI = 0; I <btns.length; iは++ ){ (関数(指数){ btns [インデックス] .onclick = 関数(){ にconsole.log(インデックス); } })(I)。 } // 方法三:使用了闭包 VAR btns = document.querySelectorAll( 'ボタン' ) のための(VAR i = 0; I <btns.length; iは++ ){ btns [I] .onclick =(関数(指数){ 戻り 関数(){ にconsole.log(インデックス); } })(I)。 }