Цикл и return во JavaScript

Нека имаме функција што ја враќа сумата на броевите од 1 до 5:

javascriptfunction func() {
  let sum = 0;
  
  for (let i = 1; i <= 5; i++) {
    sum += i;
  }
  
  return sum;
}

let res = func();
console.log(res); // ќе испише 15

Сега да го поставиме return внатре во циклусот, вака:

javascriptfunction func() {
  let sum = 0;
  
  for (let i = 1; i <= 5; i++) {
    sum += i;
    return sum;
  }
}

let res = func();
console.log(res);

Во овој случај, циклусот ќе се изврши само една итерација и ќе дојде до автоматско излегување од функцијата (а со тоа и од циклусот). А во една итерација на циклусот, во променливата sum ќе заврши само бројот 1, а не целата потребна сума.

Задание 1

Што ќе се испише во конзола како резултат на извршувањето на следниот код:

javascriptfunction func(num) {
  let sum = 0;
  
  for (let i = 1; i <= num; i++) {
    sum += i;
    return sum;
  }
}

console.log( func(5) );

Објаснете зошто. Што сакал да направи авторот на овој код? Исправете ја грешката на авторот.