如何在Javascript中将数字拆分成数字?

Rob*_*rto 1 javascript

我想将一个数字拆分成数字(例如4563到4,5,6,3),然后成瘾这个数字.(例如:4 + 5 + 6 + 3 = 18)

我可以单独编写3位数或2位数的代码和...数字,但我不能为每个数字写一个全局代码.

所以这是我的2位数字代码:

var a = 23
var b = Math.floor(a/10); // 2
var c = a-b*10; // 3
var total = b+c; // 2+3
console.log(total); // 5
Run Code Online (Sandbox Code Playgroud)

这是我的3位数字代码:

var a = 456
var b = Math.floor(a/100); // 4
var c = a-b*100; // 56
var d = Math.floor(c/10); // 5
var e = c-d*10; // 6
var total = b+d+e; // 4+5+6
console.log(total); // 15
Run Code Online (Sandbox Code Playgroud)

但我不能写一个代码来处理每个数字.我怎么能为每个数字写一个全局代码?

Aru*_*hny 5

在现代浏览器中,您可以执行类似的数组操作

var num = 4563;
var sum = ('' + num).split('').reduce(function (sum, val) {
    return sum + +val
}, 0)
Run Code Online (Sandbox Code Playgroud)

演示:小提琴

在第一次创建数组数字的位置,然后使用reduce来汇总数组中的值