Ejemplo con parámetro a través de recursión en JavaScript
Vamos, mediante recursión, a mostrar secuencialmente los elementos del array. Supongamos que el array inicialmente se pasa como parámetro a la función:
func([1, 2, 3]);
Vamos por ahora sin recursión, usando el método
shift
a mostrar todos los elementos del array uno por uno:
function func(arr) {
console.log(arr.shift()); // mostrará 1
console.log(arr); // mostrará [2, 3] - el array se redujo
console.log(arr.shift()); // mostrará 2
console.log(arr); // mostrará [3] - el array se redujo
console.log(arr.shift()); // mostrará 3
console.log(arr); // mostrará [] - el array está vacío
}
func([1, 2, 3]);
Como puedes ver, el método shift extrae
y devuelve el primer elemento del array, mientras
que el propio array se reduce en ese elemento.
Ahora usemos recursión:
function func(arr) {
console.log(arr.shift(), arr);
if (arr.length != 0) {
func(arr);
}
}
func([1, 2, 3]);
En realidad, por supuesto, es más fácil recorrer los elementos del array con un bucle. Los ejemplos proporcionados simplemente demuestran el trabajo de la recursión con ejemplos simples (no de la vida real). Los ejemplos más útiles de aplicación de la recursión son simplemente más complejos, los analizaremos un poco más adelante.
Dado el array:
let arr = [1, 2, 3, 4, 5];
Mediante recursión, muestra los elementos de este array en la consola.