Skip to content

Instantly share code, notes, and snippets.

@sebdeckers
Created June 12, 2014 10:23
Show Gist options
  • Save sebdeckers/f0ca238325a858206013 to your computer and use it in GitHub Desktop.
Save sebdeckers/f0ca238325a858206013 to your computer and use it in GitHub Desktop.
Playing with Promise syntax
require('es6-shim');
function doSomething() {
console.log('doSomething');
return Promise.resolve();
}
function doMore() {
console.log('doMore');
return Promise.reject(Error('failed'));
}
function recover1() {
console.log('recover1');
return Promise.reject(Error('failed'));
}
function recover2() {
console.log('recover2');
return Promise.reject(Error('failed'));
}
doSomething()
.then(doMore)
.catch(function catch1(err) {
console.log('catch1');
recover1()
throw new Error('error in the middle of error handling')
recover2()
})
.catch(function catch2(err) {
console.log('catch2');
});
@sebdeckers
Copy link
Author

Output:

doSomething
doMore
catch1
recover1
catch2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment