Цикл и 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) );

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