千家信息网

js中等待Promises的示例分析

发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章给大家分享的是有关js中等待Promises的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。等待 Promises在某些情况下,我们需要等待多个Promis
千家信息网最后更新 2025年01月16日js中等待Promises的示例分析

这篇文章给大家分享的是有关js中等待Promises的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

等待 Promises

在某些情况下,我们需要等待多个Promise结束,这里,我们使用Promise.all。

const PromiseArray = [     Promise.resolve(100),     Promise.reject(null),     Promise.resolve("Data release"),     Promise.reject(new Error('Something went wrong'))]; Promise.all(PromiseArray)   .then(data => console.log('all resolved! here are the resolve values:', data))   .catch(err => console.log('got rejected! reason:', err))

关于Promise.all需要注意的一件事是,当一个Promise拒绝时,该方法将引发错误。这意味着我们的代码将不会等到所有的Promise都完成。

如果想要等到所有Promise都完成后,无论它们被拒绝还是成功,可以使用Promise.allSettled。此方法在ES2020的最终版本中。

const PromiseArray = [     Promise.resolve(100),     Promise.reject(null),     Promise.resolve("Data release"),     Promise.reject(new Error('Something went wrong'))]; Promise.allSettled(PromiseArray).then(res =>{ console.log(res); }).catch(err => console.log(err)); //[ //{status: "fulfilled", value: 100}, //{status: "rejected", reason: null}, //{status: "fulfilled", value: "Data release"}, //{status: "rejected", reason: Error: Something went wrong ...} //]

感谢各位的阅读!关于"js中等待Promises的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0