Массив цифр числа в JavaScript

Давайте получим массив цифр числа. Пусть дано следующее число:

let num = 12345;

Попытка разложить число через spread приведет к ошибке, так как числа не итерируемы:

let num = 12345; let arr = [...num]; // ошибка console.log(arr);

Для решения проблемы преобразуем число в строку:

let num = 12345; let arr = [...String(num)]; console.log(arr); // ['1', '2', '3', '4', '5']

У нас, однако, получился массив строк, а не чисел. Исправим проблему с помощью хитрого приема, используя метод map:

let num = 12345; let arr = [...String(num)].map(Number); console.log(arr); // [1, 2, 3, 4, 5]

Дано число. Найдите сумму его цифр.

enru