利用闭包的方式
1.
for (var i = 0; i < 10; i++) {
var aObj = document.createElement('a')
aObj.innerText = 'a标签' + i
aObj.onclick = (function (i) {
return function () {
alert(i)
}
})(i)
document.body.appendChild(aObj)
}
2.
for (var i = 0; i < 10; i++) {
(function (i) {
var aObj = document.createElement('a')
aObj.innerText = 'a标签' + i
aObj.onclick = function () {
alert(i)
}
document.body.appendChild(aObj)
})(i)
}
利用块级作用域的方式
for (let i = 0; i < 10; i++) {
let aObj = document.createElement('a')
aObj.innerText = 'a标签' + i
aObj.onclick = function () {
alert(i)
}
document.body.appendChild(aObj)
}