본문 바로가기

CS 잡지식

동기, 비동기 함수(FEAT. JS)

function promiseFunc(){
  return new Promise(function(res, rej)   
  {// Doing something!
     res(1);
  });
}

async function asyncFunc(){
  console.log("2");
  const res = await promiseFunc(); //여기서 asyncFunction()함수는 blocking 상태가 된다. 
  console.log(res);				// 고로, console.log(res)는 실행을 미루고, 17줄의 console.log(4)
}			         			//를 실행을 한다. 
								// 그러다가 promiseFunc()실행이 완료가 되면, 그때서야
                                // console.log(res)가 실행이 되고, 함수가 종료된다. 
// 이 이하가 main() 부분이라고 생각하면 된다.
console.log("3");
asyncFunc();
console.log("4");

Javascript 비동기 함수의 동작원리 (feat. EventLoop) - 호롤리한 하루 (gruuuuu.github.io)

 

Javascript 비동기 함수의 동작원리 (feat. EventLoop)

Overview 이번 포스팅에서는 최근 Javascript관련 포스팅 3개를 작성하면서 개인적으로 궁금했던 내용을 다뤄보려고 합니다. (1) 호다닥 톺아보는 Callback 함수 (2) 호다닥 톺아보는 Promise (3) 호다닥 톺

gruuuuu.github.io

위 사이트에 들어 가면, 비동기 함수가 어떻게 동작하는지 애니메이션으로 잘 표현이 돼 있다. 

비동기 함수를 만나면 실행의 흐름이 어떻게 되는지를 확인을 하라.!