Primer sa parametrom preko rekurzije u JavaScript

Hajde, uz pomoć rekurzije da sekvencijalno prikažemo elemente niza. Neka se niz inicijalno prosledi kao parametar funkcije:

javascriptfunc([1, 2, 3]);

Hajde za sada bez rekurzije, koristeći metod shift da prikažemo sve elemente niza redom:

javascriptfunction func(arr) {
  console.log(arr.shift()); // ispisuje 1
  console.log(arr); // ispisuje [2, 3] - niz je smanjen
  
  console.log(arr.shift()); // ispisuje 2
  console.log(arr); // ispisuje [3] - niz je smanjen
  
  console.log(arr.shift()); // ispisuje 3
  console.log(arr); // ispisuje [] - niz je prazan
}

func([1, 2, 3]);

Kao što vidite, metod shift izvlači i vraća prvi element niza, pri čemu se sam niz smanjuje za taj element.

Sada hajde da upotrebimo rekurziju:

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

func([1, 2, 3]);

Zapravo, naravno, najjednostavnije je preći kroz elemente niza petljom. Navedeni primeri za sada jednostavno demonstriraju rad rekurzije na jednostavnim primerima (ne realnim). Korisniji primeri primene rekurzije su jednostavno komplikovaniji, razmotrićemo ih malo kasnije.

Задание 1

Dat je niz:

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

Uz pomoć rekurzije prikažite elemente ovog niza u konzoli.