此递归javascript函数有什么问题? [JS]

时间:2020-02-20 13:09:52

标签: javascript recursion

大家好,我正在尝试制作一个程序,以便在使用递归调用时将数字设为偶数时输出。有人可以告诉我为什么它不能按我预期的那样工作吗?。

const isEven = num => {
  if (num === 0) return true;
  else if (num === 1) return false;
  //console.log(num);
  isEven(num-2);
}

isEven(16); // Epected Log: 0 but instead it returns undefined

2 个答案:

答案 0 :(得分:3)

因为参数不同于0或1,所以没有返回值。最后一行:

  isEven(num-2);

应该是

  return isEven(num-2);

答案 1 :(得分:1)

您没有返回值。

更改:

isEven(num-2);

收件人:

return isEven(num-2);