Promises

by pointzerotwo

JavaScript

var promise = new Promise(function(resolve, reject) {
  resolve(1);
  //reject('error');
});

var promise2 = new Promise(function(resolve, reject) {
  resolve(10);
  //reject('error');
});

var promise3 = new Promise(function(resolve, reject) {
  resolve(100);
  //reject('error');
});

x = promise.then(function(val) {
  console.log('A', val); // 1
  return promise2.then((val) => {
    console.log('B', val); // 1
  	return promise3.then((val) => {
		  console.log('C', val); // 1
    	throw "nested error"
      //return val;
    })
  })
}).then(function(val) {
  console.log('D', val); // 3
}).catch((err) => {
  console.error('Error:', err);
})

console.log('x:', x)