下面的代码中,为什么 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]);
});
}
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.