在ES6中新加了快作用域的概念(C语言就有,作为类c语言的js,当然应该加上),算是很好理解. { let i; } console.log(i);// i is not defined 在代码块当中使用新的作用域. 问题在于for语句 let arr=[]; for(let i=0;i<5;i++){ arr[i]=function(){ console.log(i); }; } 许多的讲解并没有特别说明它的作用域是怎么看的,似乎是自然而然的事情. 然而对于以前c没专心学,真正会的也就类似PH