promise란?
기본적인 구조
기본적인 예제
Chaining Promises
※ 첫번째 then에서 정상적으로 값을 리턴 받았기 때문에 두번째 then이 정상 작동 된다.
Promise.all()
-인자로 사용되는 배열에 있는 이름들에 해당하는 모든 Promise들이 실행된 후에
최종적으로 사용되는 하나의 Promise를 반환한다.
- Promise.all()은 내부에서 실행되는 각 Promise들이 언제 끝나든지에 상관없이
모든 Promise가 resolve 값을 반환한 후에 실행된다. - 하나라도 reject가 발생되면 Promise.all()은 실행되지 않는다.
- Promise.all()가 반환하는 배열은 내부에서 실행된 각 Promise의 resolve 값들이 저장된다.
- 단, 값이 저장되는 순서는 종료 순서가 아닌 내부에서의 선언 순서다.
Promise.race()
- 인자로 사용되는 배열에 있는 이름들에 해당하는 모든 Promise들이 실행된 후에
가장 먼저 결과가 나오는 Promise의 resolve나 reject 값을 반환한다.
※ Promise.race()는 내부에서 실행되는 각 Promise들 중에서
가장 먼저 값을 반환하는 Promise의 resolve 값이나 reject 값을 반환한다.
Promise Finallizing
- 해당 Promise의 then이나 catch가 완료된 이후에 실행될 코드
fetch
- fetch(“url”) : 해당 url 주소에서 Promise를 리턴한다.