Promise.all() 메서드는 순회 가능한 객체에 주어진 모든 프로미스가 이행한 후, 혹은 프로미스가 주어지지 않았을 때 이행하는 Promise를 반환합니다. 주어진 프로미스 중 하나가 거부하는 경우, 첫 번째로 거절한 프로미스의 이유를 사용해 자신도 거부합니다.
iterable 객체
여러개의 비동기처리를 할 때 사용을 한다.
예를들면 3개의 비동기 처리 요청을 할 떄 1초 / 3초/ 2초가 걸린다고 가정하면 따로 각각 비동기 요청을 하게 되면 1초 + 3 초+ 2초 === 6초가 걸린다. 하지만 Promise.all()로 한 번에 요청을 하게되면 가장 긴 3초와 비슷한 시간으로 끝이 난다.
Promise.all()함수가 정상적으로 종료되면 모든 비동기 요청이 정상적으로 끝이난 것이지만, 1개라도 비동기요청에서 reject이 되면 첫 번째 거부사유만 반환한다. 혹시나 에러가 많이 나면 찾기 힘들 수 있다.