
	                	                 
Promise.allSettled(promises) 함수는 모든 Promise가 settled 상태가 될 때까지 기다립니다. settled 상태란 fulfilled 또는 rejected 상태를 의미합니다. 이 함수는 오류가 발생한 Promise를 처리하는 방법을 제공하지 않습니다. 오류를 처리하려면 catch 블록을 사용하여 오류를 캐치해야 합니다.
다음은 예제와 함께 오류를 처리하는 방법을 설명합니다.
#hostingforum.kr
javascript
const promises = [
  Promise.resolve('성공 1'),
  Promise.reject('에러 1'),
  Promise.resolve('성공 2'),
  Promise.reject('에러 2')
];
Promise.allSettled(promises)
  .then((results) => {
    console.log(results);
  })
  .catch((error) => {
    console.error('오류:', error);
  });
위 코드에서 catch 블록은 오류를 캐치하여 처리합니다. 오류가 발생한 Promise의 reason을 console.error에 출력합니다.
또 다른 방법은 Promise.allSettled(promises) 함수를 사용하여 오류를 처리하는 방법을 설명합니다.
#hostingforum.kr
javascript
const promises = [
  Promise.resolve('성공 1'),
  Promise.reject('에러 1'),
  Promise.resolve('성공 2'),
  Promise.reject('에러 2')
];
Promise.allSettled(promises)
  .then((results) => {
    results.forEach((result) => {
      if (result.status === 'rejected') {
        console.error(`오류: ${result.reason}`);
      } else {
        console.log(`성공: ${result.value}`);
      }
    });
  });
위 코드에서 results.forEach() 메소드를 사용하여 각 Promise의 상태를 확인합니다. rejected 상태인 경우 오류를 console.error에 출력하고, fulfilled 상태인 경우 성공을 console.log에 출력합니다.
2025-05-28 13:20