nykakdelishki
@nykakdelishki
Я Ракета , я Торпеда!

Как ускорить код?

Есть код:
function digital_root(n) {
  n = String(n);
  n = n.split('');
  let sum = 0;
  for (let i = 0;i<n.length;i++) {
  sum = sum + Number(n[i]);
  }
  let num = 0;
  while (sum >10) {
  	sum = String(sum);
  	sum = sum.split('');
  	for (i = 0; i < sum.length; i++) {
  		num = num + Number(sum[i]);
  	}
  	sum = num;
  }
  return sum;
}

Я не понимаю почему он работает так медленно (по секунде на функцию)...Можно как нибудь ускорить его?
  • Вопрос задан
  • 113 просмотров
Пригласить эксперта
Ответы на вопрос 1
Вообще нет смысла считать так, можно намного проще:

function digital_root(n) {
    const root = n % 9;
    return root;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы