პარამეტრის მაგალითი რეკურსიის გამოყენებით JavaScript-ში

მოდით, რეკურსიის გამოყენებით თანმიმდევრულად გამოვიტანოთ მასივის ელემენტები. დაე, მასივი თავდაპირველად გადაეცეს ფუნქციის პარამეტრებს:

javascriptfunc([1, 2, 3]);

მოდით ჯერ რეკურსიის გარეშე გამოვიყენოთ მეთოდი shift და გამოვიტანოთ ყველა ელემენტი მასივიდან თანმიმდევრულად:

javascriptfunction func(arr) {
  console.log(arr.shift()); // გამოიტანს 1-ს
  console.log(arr); // გამოიტანს [2, 3] - მასივი შემცირდა
  
  console.log(arr.shift()); // გამოიტანს 2-ს
  console.log(arr); // გამოიტანს [3] - მასივი შემცირდა
  
  console.log(arr.shift()); // გამოიტანს 3-ს
  console.log(arr); // გამოიტანს [] - მასივი ცარიელია
}

func([1, 2, 3]);

როგორც ხედავთ, მეთოდი shift ამოჭრის და დააბრუნებს მასივის პირველ ელემენტს, ამ შემთხვევაში თავად მასივი მცირდება ამ ელემენტით.

ახლა მოდით გამოვიყენოთ რეკურსია:

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

func([1, 2, 3]);

რა თქმა უნდა, უმარტივესია მასივის ელემენტების გადამლაგებლობა ციკლით. მოყვანილი მაგალითები უბრალოდ აჩვენებს რეკურსიის მუშაობას მარტივ მაგალითებზე (არაპრაქტიკულ). უფრო სასარგებლო რეკურსიის გამოყენების მაგალითები უბრალოდ უფრო რთულია, ჩვენ მათ ცოტა უფრო გვიან განვიხილავთ.

Задание 1

მოცემულია მასივი:

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

რეკურსიის გამოყენებით გამოიტანეთ ამ მასივის ელემენტები კონსოლში.