데브허브 | DEVHUB | Can you do this JS Interview Question?Can you do this JS Interview Question?
job 함수는 내부에서 즉시 reject()를 호출하여, 생성되는 Promise가 처음부터 거부(rejected) 상태로 시작됨을 보여줍니다. 💥
- 거부된 Promise는 체인 내의 모든
.then() 핸들러를 건너뛰고, 가장 가까운 .catch() 핸들러로 제어를 전달합니다. ⏭️
.catch() 핸들러는 거부된 Promise를 처리하여 에러를 잡고, 이후의 Promise 체인을 다시 성공(resolved) 상태로 전환시키는 역할을 합니다. 🩹
.catch()가 에러를 성공적으로 처리하면, 그 뒤에 오는 .then() 핸들러는 다시 실행될 수 있습니다. 이는 Promise 체인이 에러 처리 후에도 계속될 수 있음을 의미합니다. 🔄
- 이 예제는 JavaScript Promise의 에러 처리 메커니즘과
.then(), .catch() 메서드의 상호작용을 이해하는 데 중요한 실용적인 시나리오를 제공합니다. 💡