Rekurzió kezelése JavaScriptben
A programozásban létezik a
rekurzió fogalma - ez az, amikor egy függvény
saját magát hívja meg. Nézzünk egy példát.
Jelenítsünk meg rekurzióval számokat 1-től
10-ig:
let i = 1;
function func(){
console.log(i);
i++;
if (i <= 10){
func(); // itt a függvény saját magát hívja
}
}
func();
Beszéljük meg, hogyan működik ez a kód.
Van egy globális i változónk
és egy func függvényünk, amelynek belsejében a konzolra
kiírjuk a i változó tartalmát,
majd ++ műveletet végzünk.
Ha a i változónk kisebb vagy
egyenlő, mint 10, akkor a függvény ismét meghívódik.
Mivel a i változó globális,
minden új függvényhívásnál az előző hívásnál
beállított i változó értéke lesz benne.
Így az fog történni, hogy a függvény addig hívja
saját magát, amíg a i nem lesz
nagyobb, mint 10.
Ne feledje, hogy esetünkben a függvényt
nem indíthatjuk if nélkül - ha ezt megtennénk,
akkor végtelen függvényhívásokhoz vezetne.