-
카테고리
-
세부 분야
풀스택
-
해결 여부
미해결
마이크로 태스크로 들어가는 콜백함끼리는 순서대로 실행되는게 맞나요?
21.07.16 21:55 작성 조회수 155
0
강의에서 마이크로 태스크로 들어가는 콜백함수끼리는 순서대로 실행된다고 하셨는데 실행 했을때, 순서 상관없이nextTick이 우선적으로 실행됩니다.
Promise.resolve().then(() => console.log("promise"));
process.nextTick(() => console.log("nextTick"));
//nextTick
//promise
또, promise의 then안쪽에서 console.log를 바로 실행했을때는 순서 상관없이 promise가 우선적으로 실행됩니다 ㅠㅠ
Promise.resolve().then(console.log("promise"));
process.nextTick(() => console.log("nextTick"));
//promise
//nextTick
답변을 작성해보세요.
1
조현영
지식공유자2021.07.16
이게 노드 버전 따라서 동작이 다를 수 있습니다. process.nextTick이 js표준이 아니라서요.
그리고 두 번째 코드는 당연히 콘솔 promise 가 먼저 실행될 수밖에 없습니다. 코드를 잘 봐보세요.
setTimeout(console.log(1), 1000)
setTimeout(() => console.log(1), 1000)
답변 1