下面的代码中,为什么 elems[i]的结果是 undefined?
代码及运行效果也可在 JS Bin 中查看:https://jsbin.com/tixujoyibu/edit?html,css,js,console,output
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>JS Bin</title> </head> <body> <div class="link"> <a href="#">壹</a> <a href="#">贰</a> <a href="#">叁</a> <a href="#">肆</a> </div> </body> </html>
var elems = document.getElementsByTagName("a"); for(var i = 0; i < elems.length; i++ ){ elems[i].addEventListener("click",function(){ console.log("i = " + i); //运行结果:"I am link # undefined",为什么得到的 elems[i]是 undefined 呢? console.log("I am link # " + elems[i]); }); }