폐쇄에 작용 : 폐쇄주기

@ . 예상 결과는 모든 인쇄 6 
대를 ( VAR은 I = 1이면, I는 <= 5; I ++.. ) { 
  의 setTimeout ( 함수 () { 
    CONSOLE.LOG (I) 
  }, I는 1000 * )    
}
  지연 콜백 함수가 끝날 때까지 실행한다. 실제로, 상기 타이머는 각각의 반복의 setTimeout을 수행하도록 실행되는 경우에도 (..., 0), 여전히 사이클이 종료 한 후에 실행된다. 결국은 모든 콜백 함수 무엇 "결함"는 의미와 행동 발생
위한 ( VAR 난 = 1; I <= 5; I ++ ) { 
  ( 함수 () { 
    의 setTimeout ( 함수 타이머 () { 
      CONSOLE.LOG (I) 
    } 나 * 1000 ) 
  }) () 
}   // 666666

또는 형태의 폐쇄는하자 달성 할 수

 위한 ( VAR 난 = 1; I <= 5; I ++ ) { 
   ( 함수 () {
      VAR의 j는 = 
     (에서는 setTimeout 함수 () { 
       CONSOLE.LOG (j) 
     }, J * 1000 ) 
   }) () 
 }    // 1 2 3 4 5 6 

  ( VAR 난 = 1; i가 "= 5; I ++ ) { 
   ( 함수 (j) { 
     의 setTimeout ( 함수 () { 
       CONSOLE.LOG (j) 
     }, J * 1000 ) 
   }) (ⅰ ) 
 } 
// 使用하게 
위해 난 1 =하자 (; I <= 5; I ++) { 
  의 setTimeout ( 함수 타이머 () { 
    CONSOLE.LOG (I)를 
  } 난 1000 * ) 
}

 

추천

출처www.cnblogs.com/chorkiu/p/12132724.html