Eksempel med parameter via rekursion i JavaScript
Lad os, ved hjælp af rekursion, sekventielt udskrive elementerne i et array. Lad arrayet oprindeligt være sendt som parameter til funktionen:
func([1, 2, 3]);
Lad os først uden rekursion ved at bruge metoden
shift
udskrive alle arrayets elementer én efter én:
function func(arr) {
console.log(arr.shift()); // udskriver 1
console.log(arr); // udskriver [2, 3] - arrayet er blevet mindre
console.log(arr.shift()); // udskriver 2
console.log(arr); // udskriver [3] - arrayet er blevet mindre
console.log(arr.shift()); // udskriver 3
console.log(arr); // udskriver [] - arrayet er tomt
}
func([1, 2, 3]);
Som du kan se, skærer metoden shift
den første element ud af arrayet og returnerer den,
samtidig med at arrayet selv bliver mindre med dette element.
Lad os nu bruge rekursion:
function func(arr) {
console.log(arr.shift(), arr);
if (arr.length != 0) {
func(arr);
}
}
func([1, 2, 3]);
Selvfølgelig er det nemmeste i virkeligheden at gennemgå arrayets elementer med en løkke. De givne eksempler demonstrerer simpelthen rekursionens funktion med simple eksempler (ikke fra virkelige situationer). Mere nyttige eksempler på anvendelse af rekursion er bare mere komplekse, dem vil vi se nærmere på lidt nedenfor.
Givet et array:
let arr = [1, 2, 3, 4, 5];
Med hjælp fra rekursion, udskriv elementerne i dette array til konsollen.