Introducción
En este laboratorio, exploraremos la función unfold() en JavaScript. Esta función nos permite crear un array llamando repetidamente a una función iteradora con un valor semilla inicial hasta que la función devuelva false. A través de este laboratorio, aprenderemos cómo usar la función unfold() y cómo se puede utilizar para simplificar ciertas tareas de programación.
Desplegar un array
Para crear un array utilizando una función iteradora y un valor semilla inicial, siga estos pasos:
- Abra la Terminal/SSH y escriba
nodepara comenzar a practicar la codificación. - Utilice un bucle
whileyArray.prototype.push()para llamar a la función iteradora repetidamente hasta que devuelvafalse. - La función iteradora debe aceptar un argumento (
seed) y siempre devolver un array con dos elementos ([value,nextSeed]) ofalsepara terminar.
Utilice el siguiente código para implementar la función unfold:
const unfold = (fn, seed) => {
let result = [],
val = [null, seed];
while ((val = fn(val[1]))) result.push(val[0]);
return result;
};
Este es un ejemplo de cómo utilizar la función unfold:
var f = (n) => (n > 50 ? false : [-n, n + 10]);
unfold(f, 10); // [-10, -20, -30, -40, -50]
Esto producirá un array con los valores generados por la función iteradora f a partir del valor semilla inicial de 10. La función iteradora genera un array con dos elementos en cada paso: la negación del valor semilla actual y el siguiente valor semilla, que se incrementa en 10. El proceso continúa hasta que el valor semilla es mayor que 50, momento en el que la función devuelve false.
Resumen
¡Felicitaciones! Has completado el laboratorio de Desplegar un array. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.