When a Promise needs to only "resolve" or "reject", it's more efficient and readable to use the methods specially created for such
use cases: Promise.resolve(value) and Promise.reject(error).
let fulfilledPromise = new Promise(resolve => resolve(42));
let rejectedPromise = new Promise(function(resolve, reject) {
reject('fail');
});
let fulfilledPromise = Promise.resolve(42);
let rejectedPromise = Promise.reject('fail');