본문 바로가기

Developer/기술면접

async , await란?

async, await란?

기존의 콜백 함수와 프로미스의 단점을 보완한 비동기 처리 방식

 

async, await의 필요성

// fetchUser()함수의 데이터가 받아질 때까지 기다려야 한다고 가정함

// 기존 콜백 함수 이용한 비동기 방식

function logName(callback){
  var user = fetchUser('domain.com/users/1');
  callback(user);
}

logName(function (user){
  if (user.id === 1) {
    console.log(user.name);
  }
}); // 10줄 코드..



// async, await 이용한 비동기 방식

async function logName() {
  var user = await fetchUser('domain.com/users/1');
  if (user.id === 1) {
    console.log(user.name);
  }
} // 6줄 코드!

 

간단한 async, await 사용하기 ( es2021 )

(async () => {
  var user = await fetchUser('domain.com/users/1');
  if (user.id === 1) {
    console.log(user.name);
  }
})();

 

'Developer > 기술면접' 카테고리의 다른 글

Webpack이란?  (0) 2021.07.20
Promise란?  (0) 2021.07.20
동기(Sync), 비동기(Async)란?  (0) 2021.07.20
HTTP 상태 코드  (0) 2021.07.20
클로저(Closure)란?  (0) 2021.07.20