首页 > 代码库 > let和const

let和const

1、let在for循环中的应用

for(var i = 0; i < btn.length; i ++) {
    btns[i].onclick = function () {
        console.log(i)
    }
}
如何解决?
-- 添加自定义属性
for(var i = 0; i < btn.length; i ++) {
    btn[i].index = i;
    btns[i].onclick = function () {
        console.log(this.index)
    }
}

-- 闭包  

for(var i = 0; i < btn.length; i ++) {
    (function(i) {
        btns[i].onclick = function () {
            console.log(this.index)
        }
    })(i)
}

-- let

for(let i = 0; i < btn.length; i ++) {
    btns[i].onclick = function () {
        console.log(i)
    }
}

  

let和const