function sleep(foo, millisec) {
    console.log("good night");
    var startTime = new Date().getTime();
    while (new Date().getTime() < startTime + millisec);
    foo();
}
 
sleep(function() {
    console.log("... where am i?");    
}, 3000);


setTimeout함수를 동기화시킨코드인데 저게 존나웃긴게머냐면 while문을 while (new Date.getTime() < startTime + millisec) { foo() } 하면 안됨ㅋㅋㅋ

조건문만봐도 함수실행하자마자 바로 where am i출력하는건데 3초후에 출력을 한다는거-_-;;


왜 이렇게 실행되는지 아시는분 잇나요?;