1、数组newArray中有哪些元素?
var array = [];
for (var i = 0; i < 3;i++) {
array.push(() => i);
}
var newArray = array.map(el => el());
console.log(newArray);
答案是:3,3,3
如果要记录每一次循环的值,是newArray打印出0,1,2,可以使用let声明一个具有块级作用域的变量,这样为每次循环迭代创建一个新的单独的绑定。
还有一个实现方案是使用闭包: