Príklad s parametrom cez rekurziu v JavaScripte

Pomocou rekurzie postupne vypíšme prvky poľa. Nech je pole na začiatku odovzdané parametrom funkcie:

javascriptfunc([1, 2, 3]);

Najprv bez rekurzie, pomocou metódy shift vypíšme všetky prvky poľa jeden po druhom:

javascriptfunction func(arr) {
  console.log(arr.shift()); // vypíše 1
  console.log(arr); // vypíše [2, 3] - pole sa zmenšilo
  
  console.log(arr.shift()); // vypíše 2
  console.log(arr); // vypíše [3] - pole sa zmenšilo
  
  console.log(arr.shift()); // vypíše 3
  console.log(arr); // vypíše [] - pole je prázdne
}

func([1, 2, 3]);

Ako vidíte, metóda shift vyextrahuje a vráti prvý prvok poľa, pričom samotné pole sa o tento prvok zmenší.

Teraz použime rekurziu:

javascriptfunction func(arr) {
  console.log(arr.shift(), arr);
  
  if (arr.length != 0) {
    func(arr);
  }
}

func([1, 2, 3]);

Samozrejme, najjednoduchšie je prechádzať prvky poľa pomocou cyklu. Uvedené príklady jednoducho demonštrujú prácu rekurzie na jednoduchých (neživotných) príkladoch. Prosnejšie príklady použitia rekurzie sú zložitejšie, preberieme ich o niečo neskôr.

Задание 1

Dané pole:

javascriptlet arr = [1, 2, 3, 4, 5];

Pomocou rekurzie vypíšte prvky tohto poľa do konzoly.