为了从number 获取数字的功能方法是从number 获取string,将其拆分为array(字符)并将每个元素映射回一个数字。
例如:
var number = 123456;
var array = number.toString()
.split('')
.map(function(item, index) {
return parseInt(item);
});
console.log(array); // returns [1, 2, 3, 4, 5, 6]
如果还需要对所有数字求和,可以将reduce() 方法附加到前面的代码中:
var num = 123456;
var array = num.toString()
.split('')
.map(function(item, index) {
return parseInt(item);
})
.reduce(function(previousValue, currentValue, index, array) {
return previousValue + currentValue;
}, 0);
console.log(array); // returns 21
作为替代方案,对于 ECMAScript 2015(第 6 版),您可以使用 arrow functions:
var number = 123456;
var array = number.toString().split('').map((item, index) => parseInt(item));
console.log(array); // returns [1, 2, 3, 4, 5, 6]
如果需要对所有数字求和,可以将reduce()方法附加到前面的代码中:
var num = 123456;
var result = num.toString()
.split('')
.map((item, index) => parseInt(item))
.reduce((previousValue, currentValue) => previousValue + currentValue, 0);
console.log(result); // returns 21