K
KRYFT Problem Bank
프론트엔드 보통 코딩

Promise.all 구현

Promise.all을 직접 구현하세요

30분
100점
120개 테스트케이스
#3661

문제 설명

JavaScript의 Promise.all 함수를 직접 구현하세요.

동작 방식

  • Promise 배열을 입력받음
  • 모든 Promise가 resolve되면 결과 배열을 반환
  • 하나라도 reject되면 즉시 reject
  • 빈 배열이면 빈 배열로 resolve
  • 결과 순서는 입력 순서와 동일

시그니처

function promiseAll(promises) {
  // 구현
}

테스트

promiseAll([
  Promise.resolve(1),
  Promise.resolve(2),
  Promise.resolve(3)
]).then(console.log); // [1, 2, 3]

예제 테스트케이스

예제 1
입력
75
254 -565 74 440 75 650 -826 947 -118 -769 490 -25 -994 -160 929 860 451 -989 182 -594 -306 764 321 -134 976 440 874 7 223 -534 222 -810 43 151 217 143 -454 -516 -181 203 163 -307 -615 242 300 330 -20 -28 996 -394 637 -447 363 -201 466 895 -354 945 -703 209 314 755 -997 512 606 450 -992 -737 403 664 388 -627 602 963 -607
출력
6135
예제 2
입력
2
-162 509
출력
347
예제 3
입력
57
631 -350 -226 -724 -987 50 -617 428 291 741 -120 -146 736 -547 -926 -937 -20 213 700 -596 444 -49 444 -551 -464 462 146 114 354 941 196 690 770 -602 -741 -858 -564 263 280 -451 -995 701 -556 960 -323 210 480 321 -294 -368 -943 868 -639 184 -211 841 -366
출력
-1712

힌트

실행 버튼을 눌러 코드를 실행하세요.