더북(TheBook)

setTimeoutPromise는 현재 0초로 고정되어 있으므로 좀 더 범용적으로 사용하기 위해 다음과 같이 함수로 수정하겠습니다.

const setTimeoutPromise = (ms) => new Promise((resolve, reject) => {
  setTimeout(resolve, ms);
});
setTimeoutPromise(3000).then(() => {
  console.log('3초 뒤에 실행됩니다.');
});

setTimeoutPromise를 함수로 바꿨습니다. setTimeoutPromise()setTimeout() 함수에 필요한 ms를 인수로 받는 고차 함수입니다. 즉, setTimeoutPromise(1000)은 다음과 같은 의미입니다.

new Promise((resolve, reject) => {
  setTimeout(resolve, 1000);
});
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.