[javascript] Promise.race 메서드를 이용한 가장 빨리 처리되는 Promise 선택
JavaScript에서 Promise.race
메서드를 사용하면 여러 개의 Promise 중에서 가장 먼저 처리된 Promise를 선택할 수 있습니다.
Promise.race 메서드의 사용법
Promise.race 메서드는 여러 개의 Promise 객체를 인자로 받아 가장 먼저 처리된 Promise를 반환합니다.
const promise1 = new Promise((resolve, reject) => {
setTimeout(resolve, 100, '첫 번째 Promise');
});
const promise2 = new Promise((resolve, reject) => {
setTimeout(resolve, 200, '두 번째 Promise');
});
Promise.race([promise1, promise2])
.then((value) => {
console.log(value); // "첫 번째 Promise"가 출력됩니다.
});
위의 예제에서 promise1
과 promise2
가 각각 100ms와 200ms 후에 처리됩니다. Promise.race
를 사용하여 두 Promise 중에서 가장 먼저 처리된 promise1
의 값을 콘솔에 출력하게 됩니다.
Promise.race 메서드의 활용
Promise.race
메서드를 사용하면 여러 개의 비동기 작업 중에서 가장 먼저 완료된 작업을 확인할 수 있습니다. 예를 들어, 여러 개의 HTTP 요청을 보내고, 그 중에서 가장 빠른 응답을 처리하고 싶을 때 유용하게 활용할 수 있습니다.
마무리
Promise.race 메서드를 활용하면 여러 개의 Promise 중에서 가장 먼저 처리된 Promise를 선택할 수 있습니다. 이를 통해 비동기 작업을 조율하고, 가장 빨리 처리된 작업을 신속하게 처리할 수 있습니다.