为了账号安全,请及时绑定邮箱和手机立即绑定

for循环里变量作用域

for循环里变量作用域

慕丝7291255 2018-12-12 22:19:54
for(var i in data){$('#test'+i).on('change',function(){        console.log(i);    })}每个元素触发事件都会显示最后一个data里的i,数组就是data.length-1感觉是闭包相关的问题,请问该如何修改PS:let的写法我知道 但是浏览器不兼容没法用
查看完整描述

1 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

你可以试一试看看可以解决你的问题;

for(var i in data){

(function(i){

$('#test'+i).on('change',function(){


    console.log(i);

})

})(i);

}


查看完整回答
反对 回复 2019-01-08
  • 1 回答
  • 0 关注
  • 456 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信