본문 바로가기

자바스크립트

[인간 JS엔진 되기] 2-4. Promise에도 동기 부분이 있다!

Promise란 실행은 바로 하되, 결괏값을 나중에 원할 때 쓸 수 있는 것

promse, process.nextTick -> micro, 나머지는 매크로 Queue에서 처리

 

prmoise 조건은 resolve 함수가 호출 될 ㄸ

 

let a = 2;

//new Promise가 실행되면서 Promise 안의 코드는 동기적으로 실행됨, 그 결과를 resolve에 넣음
const p = new Promise((resolve, reject) => {
    console.log('제일 먼저 실행')
    //동기
    setTimeout(() => {
        a = 5;
        console.log(a)
        resolve(a);
    },0)
})

console.log('딴짓')

p.then((result) => {
    console.log('result 는 ', result)
})