我的假设是if语句第一部分的返回会破坏函数并返回n,但是它一直给出未定义的结果。如果我console.log n,它会给出正确的结果。我是不是遗漏了什么??
谢谢大家
function digital_root(n) {
if(n.toString().length === 1){
console.log(n)
return true;
}else{
var digits = (""+n).split("");
thing = digits.reduce((a, b) => Number(a) + Number(b), 0);
digital_root(thing)
}
}
digital_root(942)发布于 2017-02-16 06:42:14
您不会在递归中返回,因此这意味着它将返回undefined。
return digital_root(thing)https://stackoverflow.com/questions/42261461
复制相似问题