Buscando erros no código com métodos padrão do JavaScript

Nas próximas tarefas, um determinado programador escreveu um código e, possivelmente, cometeu alguns erros. Você deve verificar se o código faz o que é descrito. Se o código não funcionar corretamente, você deve corrigir os erros.

Задание 1

O código deve encontrar a soma dos dígitos de um número:

javascriptlet num = 12345;
let arr = num.split('');

let sum = 0;
for (let digit of arr) {
  sum += digit;
}

console.log(sum);
Задание 2

O código deve encontrar a soma dos dígitos de um número:

javascriptlet num = 12345;
let arr = String(num).split('');

let sum = 0;
for (let digit of arr) {
  sum += digit;
}

console.log(sum);
Задание 3

O código deve encontrar a soma dos dígitos de um número:

javascriptlet num = 12345;
let arr = String(num).split('');

let sum = 0;
for (let digit of arr) {
  sum = Number(digit);
}

console.log(sum); // por que está saindo 5, e não 15?
Задание 4

O código deve encontrar a soma dos dígitos de um número:

javascriptlet num = 12345;
let arr = String(num).split('');

let sum = '';
for (let digit of arr) {
  sum += Number(digit);
}

console.log(sum);
Задание 5

O código deve encontrar o produto dos dígitos de um número:

javascriptlet num = 12345;
let arr = String(num).split('');

let prod = 0;
for (let digit of arr) {
  prod *= digit;
}

console.log(prod);