[javascript] Bluebird가 제공하는 프로미스 체이닝 기능에 대해서 설명해주세요.
Bluebird는 JavaScript에서 프로미스를 다루는 데 사용되는 라이브러리 중 하나이며, 프로미스 체이닝 기능을 제공합니다. 프로미스 체이닝은 여러 프로미스를 연결하여 순차적으로 실행하고 결과를 처리하는 기능을 말합니다.
프로미스 체이닝은 then 메서드를 사용하여 구현됩니다. 이 메서드는 프로미스가 이행(fulfilled)되었을 때 호출할 콜백 함수와 거부(rejected)되었을 때 호출할 콜백 함수를 등록할 수 있습니다. 또한, then 메서드는 다른 프로미스를 반환하여 체이닝을 계속할 수 있도록 합니다.
예를 들어, 다음과 같이 프로미스를 체이닝하여 사용할 수 있습니다:
asyncFunction()
.then(result => {
// 첫 번째 프로미스 이행시 실행할 코드
return anotherAsyncFunction(result);
})
.then(newResult => {
// 두 번째 프로미스 이행시 실행할 코드
console.log(newResult);
})
.catch(error => {
// 거부된 경우 실행할 코드
console.error(error);
});
위의 예제에서, 첫 번째 프로미스가 이행되면 then 메서드는 새로운 프로미스를 반환하여 두 번째 then 메서드로 체이닝됩니다. 즉, 여러 프로미스를 연결하여 순차적으로 실행하고 각각의 결과를 처리할 수 있습니다.
프로미스 체이닝을 통해 비동기적으로 여러 작업을 연결하고, 오류 처리도 효율적으로 수행할 수 있습니다.
참고 자료: