перевожу число в строку -> перевожу в массив, маплю его так чтобы все строки превратились в Number. Там же через map() плюсую их, получаю результат. Ну так вот, дальше мне нужно опять полученное число переводить в строку -> массив и так далее (в том случае если я не получу число меньше 10)? Или есть какой-то более быстрый способ решения этой задачи
Я решила это так: function f(n){ var t = String(n).split('').reduce(function(a,b){return(Number(a)+Number(b))}); if (t>10) return f(t); else return t; } console.log(f(66781)) Возможно это тоже самое
я кстати тоже решил, но мне кажется решение у меня пахнет говном)
Можно через деление и остаток от деления делать let num = 1234, sum = 0 sum += num % 10 num /= 10 console.log(sum, num) // Напечатает 4 и 123 Остальные числа извлекаются аналогично
да, чуть выше скинул уже
просто n%9
Чего?)
что чего
Неправильно. Оно не работает на числах кратных девяти. Тут правильный ответ: https://t.me/js_noobs_ru/707863
function f(str) { let sum = 0; for (let i = 0; i < str.length; i++) { sum += parseInt(str[i]); } return sum; }
алло дядя открой форточку проветри
ajax.done нужно внутрь setTimeout поместить, потому что обработчик вешается на старый экземпляр.
генератором можно быстро и красиво
быстро в плане сделать или в плане будет работать? хд
Обсуждают сегодня