将数字总和递归减少到一位数字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));

输出结果

控制台中的输出将为-

7

9

-3

4

以上是 将数字总和递归减少到一位数字JavaScript 的全部内容, 来源链接: utcz.com/z/326843.html

回到顶部