Async Function 에 대한 call, apply 사용

프론티어2020-03-24 15:50:363110async, call, apply

javascript 에서 function 호출시 function() 방식외에
call, apply 를 사용할수 있습니다.

그런데 호출할 함수가 Async Function 이라면
직접 call, apply 를 호출하면 return 시점등에서 문제가 생기겠죠.

이경우 call, apply 도 await 방식으로 호출해야 합니다.

예컨대

async function hello() {
  // ....
}

를 호출해야 하는 상황이라면

hello.call(this);

가 아니라

(async () => { await hello.call(this) })();

와 같이 해야 합니다.