Если ли метод для складывания цифр числа?
Например:
15 = 1 + 5 = 6
или
584 = 5 + 8 + 4 = 17
Можно брать остатки и округлять:
function digsum(n) {
var sum = 0;
while(n) sum += n % 10, n = Math.floor(n / 10);
return sum;
}
digsum(15) // 6
digsum(584) // 17
function sum(a) {
return a.toString().split('').reduce(function(a, b) { return a + parseInt(b); }, 0);
}
console.log(sum(584))
ES2015
function sum(a) {
return a.toString().split('').reduce((a, b) => a + parseInt(b), 0);
}
console.log(sum(584))
готового метода вроде как нет, можно написать самому, разбить строку на символы и сложить их
function sum(number) {
var digits,
sum = 0;
if(Object.prototype.toString.call(number) == '[object Array]') {
// из комментов - либо (number instanceof Array)
digits = number;
} else {
digits = number.toString().split('')
}
for(var i = 0; i < digits.length; i++) {
sum += parseInt(digits[i]);
}
return sum;
}
Такого метода нет.
function digits_sum(number){
let result = 0;
for(let i = 1; i<number; i=i*10)
result += ((number-number%i)/i)%10;
return result;
}
console.log(digits_sum(1234));
console.log(digits_sum(88));
console.log(digits_sum(5555555555));
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости