将数字总和递归减少到一位数字JavaScript
我们必须编写一个接受数字的函数,并不断增加其数字,直到结果不是一位数字为止,当我们获得一位数字时,我们将其返回。
用于此的代码非常简单,我们编写了一个递归函数,该函数不断添加数字,直到数字大于9或小于-9(我们将分别处理符号,因此不必重复编写逻辑)
示例
const sumRecursively = (n, isNegative = n < 0) => {n = Math.abs(n);
if(n > 9){
return sumRecursively(parseInt(String(n).split("").reduce((acc,val) => {
return acc + +val;
}, 0)), isNegative);
}
return !isNegative ? n : n*-1;
};
console.log(sumRecursively(88));
console.log(sumRecursively(18));
console.log(sumRecursively(-345));
console.log(sumRecursively(6565));
输出结果
控制台中的输出将为-
79
-3
4
以上是 将数字总和递归减少到一位数字JavaScript 的全部内容, 来源链接: utcz.com/z/326843.html