Пример со параметар преку рекурзија во 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];
Со помош на рекурзија испишете ги елементите од оваа низа во конзола.