问题可能一句话描述不清楚,先给出代码,大家可以建立一个html文档运行一下:
for (var i = 0; i < 10; i++) {
var b=document.createElement("button")
b.textContent=i
b.onclick=function (e){
alert("this is "+i)
}
document.body.appendChild(b)
}
我想实现的效果是,点5号按钮,弹出对话框就显示this is 5。当然现在无论点击几号按钮都出现this is 10。原因我清楚,但是不知道怎么修改才行。求助各位大大!
尽量不要用闭包,闭包有性能问题.