首页 > 解决方案 > 我们如何一个一个地提取数字?

问题描述

这是我到目前为止所尝试的:

function MakesingleDigits(num) {
    let result = '' 
    let arr = String(num)
    for(let i = 0 ; i < arr.length; i++){
      result = result * arr[i] 

    }
      return result
  }

解释一下我的想法

let arr = String(num)

这用于将数字更改为字符串类型。我想一个一个地提取数字,所以我将使用for循环。

result = result * arr[i]

这计算结果。我的意图是,如果我输入 num = 781,那么我想得到所有数字的乘积,即7*8*1

如何分隔数字并提取所有数字?

标签: javascript

解决方案


你在寻找数字的数字乘法吗?如果是这样,这是解决方案

let num = 781;
let result = 1 ;
let digits = num.toString().split('');
let arr = digits.map(Number);
for (let i = 0, sum = 0; i < arr.length; result *= arr[i++]);
console.log(result);

像这样的功能可以实现同样的事情

function MakesingleDigits(num) {
    let result = 1 ;
    let arr = String(num);
    for(let i = 0 ; i < arr.length; i++){
      result = result * (+arr.charAt(i));

    }
      return result;
}

推荐阅读