Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Handling Unhandled Promise Rejections | Async/Await and Best Practices for Asynchronous Code
Node.js Event Loop and Asynchronous Code

bookHandling Unhandled Promise Rejections

When working with Promises in Node.js, it is important to handle every possible rejection. If a Promise is rejected and there is no handler—such as a .catch() method or a try/catch block when using async/await—the rejection is considered unhandled. Unhandled Promise rejections can cause your application to behave unpredictably. In earlier versions of Node.js, unhandled rejections would only log a warning, but in more recent versions, they may cause the process to terminate. This can lead to downtime, lost data, or security risks if not addressed.

index.js

index.js

copy
Note
Note

In large Node.js applications, you can listen for unhandled Promise rejections globally to help with debugging or logging. This is especially useful in development environments.

process.on('unhandledRejection', (reason, promise) => {
  console.error('Unhandled Rejection:', reason);
});

This event lets you detect unhandled rejections, but it should not be used as a replacement for proper .catch() or try/catch handling. Always handle rejections explicitly in your code to prevent unexpected crashes in production.

question mark

What is a possible consequence of leaving a Promise rejection unhandled in recent versions of Node.js?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Awesome!

Completion rate improved to 7.69

bookHandling Unhandled Promise Rejections

Stryg for at vise menuen

When working with Promises in Node.js, it is important to handle every possible rejection. If a Promise is rejected and there is no handler—such as a .catch() method or a try/catch block when using async/await—the rejection is considered unhandled. Unhandled Promise rejections can cause your application to behave unpredictably. In earlier versions of Node.js, unhandled rejections would only log a warning, but in more recent versions, they may cause the process to terminate. This can lead to downtime, lost data, or security risks if not addressed.

index.js

index.js

copy
Note
Note

In large Node.js applications, you can listen for unhandled Promise rejections globally to help with debugging or logging. This is especially useful in development environments.

process.on('unhandledRejection', (reason, promise) => {
  console.error('Unhandled Rejection:', reason);
});

This event lets you detect unhandled rejections, but it should not be used as a replacement for proper .catch() or try/catch handling. Always handle rejections explicitly in your code to prevent unexpected crashes in production.

question mark

What is a possible consequence of leaving a Promise rejection unhandled in recent versions of Node.js?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 4
some-alt