promise.all 本质上也是一个promise 通过then方法获取值
function myPromiseall(...arguments) {
return new Promise((reslove,reject) => {
let arr = [], // resolove返回值
err = true, // Promise 状态
errContent = ""; // 失败提醒
for(var i=0; i<arguments.length; i++) {
// Promise.resolve(
arguments[i].then(v => {
arr.push(v)
if (arr.length === arguments.length) {
return reslove(arr);
}
}, e =>{
return reject(e)
})
//)
}
})
}
/**
注意 a 和 b 为俩个promise实例
*/
myPromiseall(a,b).then(v=>{
console.log(v) //
}).catch(e => {
console.log(e)
})