阅读背景:

js对象,数组,字符串的操作

来源:互联网 

循环绑定=>变量污染

for (var i = 0;i<lis.length;i++){
    lis[i].index = i;#给页面元素对象添加一个任意属性(保留索引的属性index)
    #循环绑定时,i分别是0,1,2,3,也就是给每个li进行事件的绑定,在绑定时,没有执行事件内部代码,只有在激活事件时才会执行,当循环结束后,i变为4(length为4),激活事件时,i已经变为4,console.log(i)打印的都是4
    lis[i].onclick = function(){
        console.log(this.index)
        console.log(this.innerText)
    }#this就能唯一指向当前激活事件的那个li对象
}for (var i = 0;i<lis.length;i++){
 



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: