为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript数字拆分成单个数字

JavaScript数字拆分成单个数字

慕的地10843 2019-10-30 09:58:33
嗨,我正在尝试解决一个数学问题,我取一个数字,例如45或111,然后将数字拆分为单独的数字,例如4 5或1 11。然后,我将每个数字保存到var中以运行方法。有谁不知道如何将数字分解为单个数字。例如,我有一个在数组上运行的循环:for (var i = 0; i < range.length; i++) {var n = range[i];   }我想为每个数字拆分数字并将它们加在一起吗?
查看完整描述

3 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

var number = 12354987,

    output = [],

    sNumber = number.toString();


for (var i = 0, len = sNumber.length; i < len; i += 1) {

    output.push(+sNumber.charAt(i));

}


console.log(output);


/* Outputs:

 *

 * [1, 2, 3, 5, 4, 9, 8, 7]

 */ 

更新:计算总和


for (var i = 0, sum = 0; i < output.length; sum += output[i++]);

console.log(sum);


/*

 * Outputs: 39

 */


查看完整回答
反对 回复 2019-10-30
?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

var num = 123456;

var digits = num.toString().split('');

var realDigits = digits.map(Number)

console.log(realDigits);


查看完整回答
反对 回复 2019-10-30
?
慕工程0101907

TA贡献1887条经验 获得超5个赞

您也可以以“数学”方式进行操作,而无需将数字视为字符串:


var num = 278;

var digits = [];

while (num > 0) {

    digits.push(num % 10);

    num = parseInt(num / 10);

}

digits.reverse();

console.log(digits);

我可以看到的一个好处是,您不必parseInt()在每个数字上都运行,而是将实际数字作为数值来处理。


查看完整回答
反对 回复 2019-10-30
  • 3 回答
  • 0 关注
  • 7393 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信