了解此功能的工作原理

时间:2019-08-20 02:28:36

标签: javascript closures

使用下面的代码,为什么console.log在数组中仅运行一次并仅输出0? 如何获得整个数组(0,1,2,3)的结果? 我对没有“让”的解决方案感兴趣,以了解其工作原理

const array = [1,2,3,4];
function arrs(){
for(var i=0; i < array.length; i++) {
  console.log('i val',i);
  return function(){
  console.log('i val 2',i);
  setTimeout(function(){
    console.log('I am at index ' + i)
  }, 0)
  }
}
}
arrs();

0 个答案:

没有答案