饥人谷技术博客

任务20-闭包、定时器

2017-01-02  本文已影响0人  饥人谷_桶饭

问答

代码题

//题目
var fnArr = [];
for (var i = 0; i < 10; i ++) {
fnArr[i] = function(){
return i;
};
}
console.log( fnArr3 ); //

```   
第一种

```
var fnArr = [];
   for(var i = 0; i<10; i++){
     
     fnArr[i]  = (function(n){
         return function(){
             return n;
         }
       
     })(i)
     
   }
console.log( fnArr[3]() ); 
```
第二种

```
var fnArr = [];
for(var i =0;i<10;i++){
  (function(){
      var n = i;
  fnArr[i] = function(){
    return n;
  }
  })()
}
console.log( fnArr[3]() ); 
```

//题目
for(var i=0;i<5;i++){
setTimeout(function(){
console.log('delayer:' + i );
}, 0);
console.log(i);
}

for(var i=0;i<5;i++){
setTimeout((function(n){
console.log('delayer:' + n );
})(i), 0);
console.log(i);
}
```

上一篇 下一篇

猜你喜欢

热点阅读