Цикл и return во JavaScript
Нека имаме функција што ја враќа сумата
на броевите од 1 до 5:
function func() {
let sum = 0;
for (let i = 1; i <= 5; i++) {
sum += i;
}
return sum;
}
let res = func();
console.log(res); // ќе испише 15
Сега да го поставиме return
внатре во циклусот, вака:
function func() {
let sum = 0;
for (let i = 1; i <= 5; i++) {
sum += i;
return sum;
}
}
let res = func();
console.log(res);
Во овој случај, циклусот ќе се изврши само една
итерација и ќе дојде до автоматско излегување
од функцијата (а со тоа и од циклусот). А во една
итерација на циклусот, во променливата sum ќе заврши
само бројот 1, а не целата потребна сума.
Што ќе се испише во конзола како резултат на извршувањето на следниот код:
function func(num) {
let sum = 0;
for (let i = 1; i <= num; i++) {
sum += i;
return sum;
}
}
console.log( func(5) );
Објаснете зошто. Што сакал да направи авторот на овој код? Исправете ја грешката на авторот.