SOURCE

function promiseAll(promiseList) {
  return new Promise((resolve,reject)=>{
      if(!Array.isArray(promiseList)) 
      {
        return  reject(new TypeError("Argument is not Array"))
      }
      let result = [];
      let count = 0;
      if(promiseList.length === 0) {
         return resolve([])
      } 
      promiseList.forEach((item,index)=>{
          Promise.resolve(item).then(res=>{
              result[index] = res;
              count++;
              if(count === promiseList.length) {
                  resolve(result)
              }
          })
          .catch(err=>{
              reject(err)
          })
      })
  })
}
console 命令行工具 X clear

                    
>
console