// fn是一个调用ajax请求以获取数据的函数
function fn(onSuccess, onError, args ){
}
///我需要编写重试函数,该函数调用fn函数进行API调用。最大尝试次数为5。如果尝试次数超过一次,则需要调用onError函数。
//重试签名
function retry(fn,attempt, onSuccess, onError, args){
}
答案 0 :(得分:0)
练习(或您的老师)可能期望使用递归函数-该函数将每次调用attempt
的{{1}}参数递增,并调用retry
的{{1}}如果递归深度超过最大尝试次数,则为参数。
第一个设计说明是retry
不会将其onError
参数直接传递给retry
,而是创建并传递一个中间错误函数来检查{{1 }}已被调用,如果未超过最大数量,则递归调用onError
。
以下代码示例为 not recursive ,并且fn
参数可能是内部变量。它将fn
处理为“任意数量的尾随参数”。如果有关家庭作业的问题,请写出与您所学内容相适应的答案。
retry