პარამეტრის მაგალითი რეკურსიის გამოყენებით JavaScript-ში
მოდით, რეკურსიის გამოყენებით თანმიმდევრულად გამოვიტანოთ მასივის ელემენტები. დაე, მასივი თავდაპირველად გადაეცეს ფუნქციის პარამეტრებს:
func([1, 2, 3]);
მოდით ჯერ რეკურსიის გარეშე გამოვიყენოთ მეთოდი
shift
და გამოვიტანოთ ყველა ელემენტი მასივიდან თანმიმდევრულად:
function 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 ამოჭრის
და დააბრუნებს მასივის პირველ ელემენტს, ამ
შემთხვევაში თავად მასივი მცირდება ამ ელემენტით.
ახლა მოდით გამოვიყენოთ რეკურსია:
function func(arr) {
console.log(arr.shift(), arr);
if (arr.length != 0) {
func(arr);
}
}
func([1, 2, 3]);
რა თქმა უნდა, უმარტივესია მასივის ელემენტების გადამლაგებლობა ციკლით. მოყვანილი მაგალითები უბრალოდ აჩვენებს რეკურსიის მუშაობას მარტივ მაგალითებზე (არაპრაქტიკულ). უფრო სასარგებლო რეკურსიის გამოყენების მაგალითები უბრალოდ უფრო რთულია, ჩვენ მათ ცოტა უფრო გვიან განვიხილავთ.
მოცემულია მასივი:
let arr = [1, 2, 3, 4, 5];
რეკურსიის გამოყენებით გამოიტანეთ ამ მასივის ელემენტები კონსოლში.