Stupid Computer/4. JavaScript
[자바스크립트] 자바스크립트의 실행 순서 ~ 간단한 예제
태선임
2014. 3. 18. 08:55
자바스크립트의 간단한 실행 순서 예제
1.
<html> <head> javascript study </head> <body> <script> alert('A') ; setTimeout(function(){ alert('B'); }, 0) ; alert('C') ; </script> </body> </html> |
결과는 A C B
타이머 함수는 현재 단위가 끝나기 전에는 실행되지 않음
즉, 택배가 집에 와도 일하는 동안에는 확인할 수 없는 것처럼, 일을 마치고 집에와야 택배를 확인할 수 있뜻이
모든 실행이 되고 B가 실행 .
2.
<html> <head> javascript study </head> <body> <script> for( var i = 0 ; i< 3 ; i++) { setTimeout(function(){ alert(i) ; }, 0) ; } </script> </body> </html> |
실행결과 : 3 3 3
setTimeout 타이머 함수는 반복문이 모두 끝난 이후에 호출됨
3. 클로저를 이용한 해결
<html> <head> javascript study </head> <body> <script> for( var i = 0 ; i< 3 ; i++) { (function (closed_i){ setTimeout(function(){ alert(closed_i) ; }, 0) ; }) (i) ; } </script> </body> </html> |
결과 : 0 1 2