SOURCE

function myPromiseAll(promises) {
    return new Promise((resolve, reject) => {
        let count = 0;
        let re = [];
        promises.forEach((promise, index) => {
            promise.then((val) => {
                count++;
                re[index] = val;
                if(count === promises.length){
                    resolve(re);
                }
            }, err => inject(err))
        })
    })
}

let p1 = new Promise((resolve, reject) => {
    console.log('1');
    resolve('成功了')
})

let p2 = new Promise((resolve, reject) => {
    console.log('2');
    resolve('success')
})

myPromiseAll([p1, p2]).then((re) => console.log('000', re))
console 命令行工具 X clear

                    
>
console