Voorbeeld met parameter via recursie in JavaScript
Laten we, met behulp van recursie, opeenvolgend de elementen van een array uitvoeren. Stel dat de array aanvankelijk wordt doorgegeven aan de parameters van de functie:
func([1, 2, 3]);
Laten we eerst zonder recursie, gebruikmakend van de methode
shift
alle array-elementen een voor een uitvoeren:
function func(arr) {
console.log(arr.shift()); // geeft 1 weer
console.log(arr); // geeft [2, 3] weer - array is verkleind
console.log(arr.shift()); // geeft 2 weer
console.log(arr); // geeft [3] weer - array is verkleind
console.log(arr.shift()); // geeft 3 weer
console.log(arr); // geeft [] weer - array is leeg
}
func([1, 2, 3]);
Zoals je ziet, snijdt de methode shift het
eerste element van de array uit en geeft het terug, waarbij
de array zelf met dit element wordt verkleind.
Laten we nu recursie gebruiken:
function func(arr) {
console.log(arr.shift(), arr);
if (arr.length != 0) {
func(arr);
}
}
func([1, 2, 3]);
Eigenlijk is het natuurlijk eenvoudiger om de elementen van de array met een lus te doorlopen. De gegeven voorbeelden dienen simpelweg om de werking van recursie te demonstreren aan de hand van eenvoudige (niet uit het leven gegrepen) voorbeelden. Meer nutige voorbeelden van recursietoepassingen zijn gewoon complexer, we zullen ze iets verderop bespreken.
Gegeven de array:
let arr = [1, 2, 3, 4, 5];
Gebruik recursie om de elementen van deze array naar de console uit te voeren.