猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
for循环事件绑定
for(var i=0;i<5;i++)
{
aBtn[i].onclick=function ()
{
alert(i);
}
}
为什么每次弹出来都是5?
去看天荒地老
浏览 1391
回答 2
2回答
回夢
因为你alert的i是全局变量。去了解下关于闭包的东西。如果用ES6的语法,把var i改为let i 就不会有问题。
0
0
0
Joy_Sang
for(var i=0;i<5; i++){ (function(i){ aBtn[i].onclick = function(){ alert(i); } })(i); }
0
0
3
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
JavaScript
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续