Deferred api for Promise by Mozilla const dfd = new Deferred();dfd.promise.then(x => { alert(x);}) dfd.resolve(42);// dfd.reject(/* some error */);