这个题忽略了闭包的问题,结果弹出都是11

来源:4-1 作用域和自由变量

Gy_gY

2020-06-10

  {


    let i, a;
    for (i = 0; i <= 10; i++) {
      (function (i) {

        var a = document.createElement('a');

        a.innerHTML = i + '<br>';

        document.body.appendChild(a);

        a.addEventListener('click', function (e) {
          e.preventDefault(); //取消默认事件,指a标签
          alert(i);
        });

      })(i);
    }

  }
写回答

1回答

双越

2020-06-10

我试着,这段代码会一次弹出 1 2 3 ... 并不是都弹出 11 。你试过没?

0
0

BAT大牛带你横扫初级前端JavaScript面试(第二版)

BAT高级前端工程师亲授,结合真实面试题,提高面试成功几率

4268 学习 · 817 问题

查看课程