for 循环中 无论是 i = 0;还是 var i = 0;声明的都是全局变量,console.log(i) 无论是在 for 循环中输出还是在 for 循环外输出,均为 3
所以 lis[i] 要换成 this
ES5及以下版本中可用 this 或者 闭包 解决这个问题,但在ES6中,只需要将 i 用 let 声明,如下:
for 循环中 无论是 i = 0;还是 var i = 0;声明的都是全局变量,console.log(i) 无论是在 for 循环中输出还是在 for 循环外输出,均为 3
所以 lis[i] 要换成 this
ES5及以下版本中可用 this 或者 闭包 解决这个问题,但在ES6中,只需要将 i 用 let 声明,如下: