The promise object represents the eventual completion (or falilure)
of an asynchronous operation and its resulting value
콜백을 수없이 엮어놓은 콜백지옥을 가독성 좋은 코드와 비동기적으로 구현할 수 있다 .
new Promise(resolve , reject)
pending : 막 생성되서 이행하지도,거부하지도 않은 초기상태
fulfilled : 성공적으로 수행
rejected : 실패
인스턴스 메서드(instance method)
than(()=>) promise를 콜백 형태로 받아올것
catch() finally() error handling처럼 사용함 됨
정적 메서드(static method)
.resolve(value) promise에 인수로 (resolve, reject) 해도되고 . 그냥 method써서 Promise.resolve(value) 해도 상관없 니맴 .reject(reason) 위 동일 .all(iterable) : 병렬처리로 모든 promise 실행 ex)promise.all([value1, value2, value3]) value들을 병렬적으로 실행함 .race(iterable) : 호출한 값들중 가장 빠른 값만 출력됨 promise.race([value1(1s), value2(3s)]) = value 1만 출력 .allSettled((iterable) 병렬처리 결과에 [{status: 'fullfiled', value: 딸기} , {status: 'reject', value: 사과}] =이렇게 상태와 값을 객체에 묶어서 반환함 async 함수내 promise를 동기적으로 실행함
async fucntion(){
await ...
await ...
}
%%최신 문법 async 없이도 await 사용가능 (async 함수로 감아줄 필요가 없음