问答详情
源自:7-1 [JavaScript]理解闭包

还是不理解”整个初始化后i就变成了4“这个意思,求大神指点

ocument.body.innerHTML = "

a

a2

a3

"; for(var i=1;i<4;i++){ document.getElementById("div"+i).addEventListener('click',function(){ alert(i); }); }

还是不理解”整个初始化后i就变成了4“这个意思,求大神指点

提问者:hznn 2015-07-26 12:04

个回答

  • 610666618
    2015-12-12 17:43:24

    for(var i=1;i<4;i++) 这是一个循环,三次循环i=1,i=2,i=3直到i++到 i=4了,不满足条件了,退出。但是i=4会当做全局变量保存,所有用户点击div会访问到i=4的情况。

  • 方克申
    2015-07-28 16:30:25

    Javascript没有块级作用域,for语句中声明的i是个全局变量。具体请看3-1节课的2:10位置。