Promise.all

mangjell·2022년 5월 1일
0

Promise란?

  • 비동기 처리를 위해 사용되는 문법
  • 보통 Promise는 async / await 문법과 사용되고, 특정 상황에서 유용하게 쓰이는 내장 메서드들을 가지고 있다.
  • 내장 메서드 리스트

Promise.all 이란?

  • Promise.all([ promise1, promise2, ... ]) 의 형태로 사용되며, 배열로 받은 모든 프로미스가 fulfill 된 이후, 모든 프로미스의 반환 값을 배열에 넣어 반환한다. 이때 배열에 들어있는 값의 순서는 완료 순서와 상관없이, 인자로 받은 프로미스 배열의 순서와 일치한다.

만약 배열에 있는 프로미스 중 하나라도 reject가 호출된다면, Promise.all 역시 reject를 호출하고 가장 먼저 reject된 프로미스의 거부사유(reason)를 사용한다.

반환 값 :

  • 모두 성공(fulfill) 시 : 각 프로미스에서 반환된 값들의 배열

  • 하나라도 실패시 : 처음으로 reject 된 프로미스의 이유(reason)를 가지고 reject 됨

장단점

  • 장점: 병렬로 요청을 진행함
  • 단점: 한 요청이 실패하면 다른 요청들도 reject됨
profile
프론트엔드 개발자

0개의 댓글