인프런 커뮤니티 질문&답변

Corin님의 프로필 이미지
Corin

작성한 질문수

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

process

nextTick, promise 우선순위

작성

·

452

0

강의 부분 : 3-6강 5:46초

영상에는 nextTick이 promise보다 우선해서 console에 찍히게 되는데, 제가 직접코드를 실행시켜보니 promise가 nextTick보다 먼저 console로 찍혔습니다. 우선순위가 어떤것이 맞는 것인가요??

코드

setImmediate(()=>{

console.log('immediate');

})

process.nextTick(()=>{

console.log('nextTick');

});

setTimeout(()=>{

console.log('timeOut');

},0);

Promise.resolve().then(()=>console.log('promise'));

 

출력결과

혹시 몰라 여러번 컴파일 했는데도 결과가 같게 나옵니다:)

답변 3

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

zero.ch0@ZERO-CH0-NT-2022-03 todaypickup_api % node test

nextTick

promise

timeOut

immediate

nextTick 먼저 나오는데 어떻게 테스트하신건가요? 다른 프로미스 안에 넣으신 건가요?

0

Corin님의 프로필 이미지
Corin
질문자

제가 코드를 잘못 입력한 걸까요..?

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

그 당시에 어떻게 하셨는지 모르겠으니 알 방법이 없습니다. 기본적으로 nextTick이 먼저 나오는게 맞고, promise 내부에서는 promise가 먼저 나오는 게 맞습니다.

0

Corin님의 프로필 이미지
Corin
질문자

이렇게 코드를 짜고 실행을 했었습니다..

다시 돌려보니 nextTick이 제일 먼저 나옵니다.

Corin님의 프로필 이미지
Corin

작성한 질문수

질문하기