Rekursiooniga töötamine JavaScriptis

Programmeerimises on selline mõiste nagu rekursioon - see on siis, kui funktsioon kutsub välja iseennast. Vaatame näite abil. Väljastame rekursiooni abil numbrid 1 kuni 10:

javascriptlet i = 1;

function func(){
  console.log(i);
  i++;
  
  if (i <= 10){
    func(); // siin kutsub funktsioon välja iseennast
  }
}
func();

Arutleme, kuidas see kood töötab.

Meil on globaalne muutuja i ja funktsioon func, mille sees konsooli väljastatakse muutuja i sisu, seejärel tehakse ++.

Kui meie muutuja i on väiksem või võrdne kui 10, siis kutsutakse funktsioon uuesti välja. Kuna muutuja i on globaalne, siis iga uue funktsiooni väljakutsega on selles eelmise väljakutsega määratud muutuja i väärtus.

Tulemuseks on, et funktsioon kutsub välja iseennast kuni i muutub suuremaks kui 10.

Pidage meeles, et meie puhul ei saa funktsiooni käivitada ilma if-ita - kui seda teha, siis tekib lõpmatu funktsioonide väljakutsete ahel.