Facebook Pixel

Can a .then callback return another promise in JavaScript?

Yes. If the callback returns a promise, the next .then waits for it to settle. The next .then receives the resolved value. This is how you chain async operations that depend on each other.

Verify This Answer

Cross-check this information using these trusted sources:

More FAQs in Promise Chaining in JavaScript

Each .then returns a new promise. If the callback returns a value, the new promise fulfills with it. If it returns a promise, the new promise waits for it. The next .then receives the result. This lets you sequence async operations flatly.

The next .then receives undefined. The chain continues but with undefined as the value. Arrow functions with block bodies need an explicit return; expression bodies (no braces) return implicitly.

It defeats the purpose of promises (creating mini callback hell). Instead of nesting, chain flatly: fetch().then(data => process(data)).then(result => render(result)). Or use async/await for the cleanest code.

Still have questions?

Browse all our FAQs or reach out to our support team

Want to upskill yourself?

Our courses are taking a Coffee break, but your curiosity shouldn't. Stay engaged with namastedev linkedin, youtube, discord and other resources while you wait.

0
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.