console.log('콘솔1')


var promise = new Promise( function (resolve, reject) {

console.log('오래걸리는 연산')

})


console.log('콘솔3')


난 이렇게쓰면 출력순서가


콘솔1

콘솔3

오래걸리는 연산


이건줄 알았거든?

아니네..


그냥 new Proomise 안에 쓰이는 코드들은 자동으로 비동기 코드가 돼서


코드의 순차실행 규칙에서 제외되는줄 알았음.. 그게 아니네


new Proomise 자체는 그것과 아무 상관이 없고


new Proomise 안의 코드가 비동기 실행 코드여야되는거구나. setTimeout이나 fetch나...


new Proomise 안에 코드를 쓰는것 자체가 fetch 처럼 비동기 실행코드로 변환 시켜주는줄 알았다