闭包

<script>
window.onload=function(){
var aBtn=document.getElementsByTagName('input');
for(i=0;i<aBtn.length;i++){
aBtn[i].onclick=function()
{
alert(i);
}
}
}
</script> //输出全部为数组长度
解决方案:
1、let
window.onload = function () {
let aBtn = document.getElementsByTagName('input');
for (let i = 0; i < aBtn.length; i++) {
aBtn[i].onclick = function () {
alert(i);
}
}
}
2、闭包
window.onload = function () {
let aBtn = document.getElementsByTagName('input');
for (let i = 0; i < aBtn.length; i++) {
(function(i){
aBtn[i].onclick = function () {
alert(i);
}
})(i)
}
}

posted on 2020-02-23 02:03  gasor  阅读(115)  评论(0)    收藏  举报

导航