首页 文章

resolve和onFulfilled之间的区别

提问于
浏览
0

有什么区别

resolveonFulfilled 在javascript中承诺?

同样,有什么区别

rejectonRejected ?简单来说,我只想问一下Promise.then(onsuccess,onreject)的onsuccess回调与Promise.resolve()有什么不同?

我正在阅读Daniel Parker的Promise Javascript . 这本书提到了他们两个,但我还没有意识到两者之间的区别 .

然后在承诺中描述:

promise.then promise.then([onFulfilled],[onRejected])返回promise promise.then()方法接受onFulfilled回调和onRejected回调 . 人们通常使用promise.catch()注册onRejected回调,而不是传递第二个参数 . 然后,该函数返回一个promise,该promise由onFulfilled或onRejected回调的返回值解析 . 回调中抛出的任何错误都会拒绝带有该错误的新promise .

也,

Promise.resolve

Promise.resolve([value | promise])返回promise Promise.resolve()函数是一个便利函数,用于创建已使用给定值解析的promise . 如果您将promise作为参数传递给Promise.resolve(),则新承诺将绑定到您提供的承诺,并相应地履行或拒绝承诺 .

码:

function settled(promises) {
 var alwaysFulfilled = promises.map(function (p) {
 return p.then(
 function onFulfilled(value) {
 return { state: 'fulfilled', value: value };
 },
 function onRejected(reason) {

 return { state: 'rejected', reason: reason };
 }
 );
 });
 return Promise.all(alwaysFulfilled);
}
};

1 回答

  • 0

    简单的说

    当一个promise被解决时,将调用任何当前或将来的onFullfilled函数,并且该函数的参数是resolve函数的值

    类似于拒绝/ onRejected

相关问题