手写Promise.retry方法;实现次数内重试请求

1:声明Promise
2:报错时候,进行判断次数,重试
3:次数用尽,抛出异常

code

// 实现promise。retry方法

Promise.prototype.retry = function(cb, time) {
  return new Promise((resolve, reject)=> {
    cb().then(res=> {
      resolve(res)
    }).catch(err=> {
      if(time >0) {
        return Promise.retry(cb, time--)
      } else {
        reject('重试次数使用完毕,依然失败')
      }
    })
  })
}

  

原文地址:https://www.cnblogs.com/soonK/p/15064658.html