//promise.race
function prorace(promise){
return new Promise((resolve,reject)=>{
for(let i=0;i<promise.length;i++){
Promise.resolve(promise[i]).then(val=>{
resolve(val)
}).catch(err=>{
reject(err)
})
}
})
}
// promise.all
function proall(promise) {
let res=new Array(promise.length),index=0
return new Promise((resolve,reject)=>{
promise.forEach((element,i) => {
Promise.resolve(element).then(val=>{
index++
res[i]=element
if(index===promise.length){
resolve(res)
}
},err =>{
reject(err)
})
});
})
}
本文探讨了JavaScript中的Promise.race函数,它允许并发处理多个承诺,并在任一完成时立即返回结果。同时,Promise.all展示了如何等待所有承诺完成。通过实例解析,理解它们在异步编程中的不同应用场景与优势。
583

被折叠的 条评论
为什么被折叠?



