Ciklus és return a JavaScript-ben
Tegyük fel, hogy van egy függvényünk, amely visszaadja a
számok összegét 1-től 5-ig:
function func() {
let sum = 0;
for (let i = 1; i <= 5; i++) {
sum += i;
}
return sum;
}
let res = func();
console.log(res); // kiírja 15-t
Tegyük fel most, hogy a return-et
a cikluson belül helyezzük el, így:
function func() {
let sum = 0;
for (let i = 1; i <= 5; i++) {
sum += i;
return sum;
}
}
let res = func();
console.log(res);
Ebben az esetben a ciklus csak egy iteráción keresztül fut le,
és automatikusan kilép a függvényből (és egyúttal a ciklusból is).
Egyetlen ciklusiteráció alatt a sum változóban
csak az 1 szám lesz, nem a teljes szükséges összeg.
Mi fog a konzolra kiíródni a következő kód végrehajtása eredményeképpen:
function func(num) {
let sum = 0;
for (let i = 1; i <= num; i++) {
sum += i;
return sum;
}
}
console.log( func(5) );
Magyarázd meg, miért. Mit akart a kód szerzője elérni? Javítsd ki a szerző hibáját.