어떻게 약속과 비동기/기다림 속에서 잠을 자는가

가끔 코드나 테스트 세트에서 sleep 사용해야 한다는 것을 발견할 수 있습니다. setTimeout 만약 비동기적인 작업이 진행되고 있다면, 이 시간 안에 완성될 수 있다는 것을 알 수 있습니다. (예를 들어 빠른 지연 함수나 비슷한 것들)다음은 간단한 방법입니다.
function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}
이제 필요한 모든 곳에서 사용할 수 있습니다.
await sleep(1000);
경고: 보통 무작위setTimeout 호출은 코드 냄새라는 것을 기억하세요. 이상적인 상황에서 무엇을 기다리고 있는지 알고 작업이 끝난 후에 일을 연결하거나 코드를 만들어서 무엇을 기다리고 있는지 알아야 합니다.이런 sleep 방법은 불가능한 상황에 적용된다.

좋은 웹페이지 즐겨찾기