microtask queue & macrotask queue

https://ko.javascript.info/event-loop

마이크로태스크 큐

setTimeout (()=> alert("timeout"));

Promise.resolve().then(()=> alert("promise"));

alert("code");

실행순서

  1. code - 동기 호출
  2. promise - .then은 마이크로태스크큐에 들어가 처리됨.
  3. setTimeout - 매크로 태스크큐로 들어가 처리되어서 가장 마지막.

let i = 0;

function count(){
	do{
	  i++;
	  progress.innerHTML = i;
	}while(i % 1e3 !=0){
	if(i< 1e6){
		queueMicrotask(count);
	}
}

count();