帮忙解释下为什么结果是2

function fun(n) {  if (n < 0){    return 0
  }  if (n === 1){    return 1
  }  if (n === 2){    return 2
  }  return fun(n-1)
}console.log(fun(4))  //为什么结果是2呢?


Qyouu
浏览 534回答 2
2回答

守候你守候我

亲,这是一个递归,执行fun(4)的时候,没有匹配结果会return fun(3),执行fun(3)的时候也没有匹配结果,会继续执行fun(2),n=2的时候匹配到了结果,所以返回2,结果递归

拉莫斯之舞

从上到下 试着理解每一步在干嘛 你就不会这样问啦
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript