development

자바스크립트 async, non-sync 함수 여부 검사

여름싼타 2022. 9. 22. 07:33
반응형

자바스크립트에서 함수가 async 함수인지 확인하는 방법

async function 선언은 AsyncFunction 객체를 반환하는 비동기 함수를 정의한다.

constructor.name 프로퍼티로 async 함수인지 체크 할 수 있다.

async 함수는 AsyncFunction을 반환하고 non-async 함수는 Function을 반환한다.

const syncSum = (a, b) => a + b;
console.log(syncSum); // [Function: syncSum]
console.log(syncSum.constructor.name); // Function

const asyncSum = async (a, b) => a + b;
console.log(asyncSum); // [AsyncFunction: asyncSum]
console.log(asyncSum.constructor.name); // AsyncFunction

console.log(
  `is Async Function : ${asyncSum.constructor.name === "AsyncFunction"}`
); // true

 

 

반응형