var a = 5;
for(var i = 0;i<a ;i++){
imglist [ i ].onclick = function(){
console.log(i)
}
}
当我们进行点击操作会发现 控制台打印出来的 不是每个标签对应的index 而一直都是最后一个标签对应的index
为什么会出现这种情况?
其实此时的 i 是全局变量 点击函数只有在执行的时候才会去查找 i 值
首先会在点击函数内部查找, 而 i 没有定义 再到函数外部去查找,此时有定义,但此时 i 已经循环完毕,因此,无论点哪个标签,弹出的都是最后一个标签的index。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。