Skip to content

Instantly share code, notes, and snippets.

@shirakaba
Created January 27, 2020 14:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shirakaba/11f260649f98bdc9d3df0e3ad053a8f0 to your computer and use it in GitHub Desktop.
Save shirakaba/11f260649f98bdc9d3df0e3ad053a8f0 to your computer and use it in GitHub Desktop.
Promise rejection behaviours

Error thrown within new Promise() block

new Promise((resolve, reject) => {
	throw new Error();
})
.then(() => {
	console.log("resolved!");
})
.catch((error) => {
	console.log("rejected!");
});
// rejected

Resolving Promise.reject()

new Promise((resolve, reject) => {
    resolve(Promise.reject());
})
.then(() => {
	console.log("resolved!");
})
.catch((error) => {
	console.log("rejected!");
});
// rejected

Resolving thrown error from nested new Promise() block

new Promise((resolve, reject) => {
    resolve(new Promise((resolve2, reject2) => { throw new Error(); }));
})
.then(() => {
	console.log("resolved!");
})
.catch((error) => {
	console.log("rejected!");
});
// rejected
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment