Introduction
Dans ce laboratoire, nous allons explorer la fonction unfold() en JavaScript. Cette fonction nous permet de créer un tableau en appelant répétitivement une fonction itératrice avec une valeur initiale jusqu'à ce que la fonction retourne false. Grâce à ce laboratoire, nous apprendrons à utiliser la fonction unfold() et à quoi elle peut servir pour simplifier certaines tâches de programmation.
Unfold Array
Pour créer un tableau à l'aide d'une fonction itératrice et d'une valeur initiale, suivez ces étapes :
- Ouvrez le Terminal/SSH et tapez
nodepour commencer à pratiquer la programmation. - Utilisez une boucle
whileetArray.prototype.push()pour appeler la fonction itératrice plusieurs fois jusqu'à ce qu'elle retournefalse. - La fonction itératrice devrait accepter un argument (
seed) et toujours retourner un tableau avec deux éléments ([value,nextSeed]) oufalsepour terminer.
Utilisez le code suivant pour implémenter la fonction unfold :
const unfold = (fn, seed) => {
let result = [],
val = [null, seed];
while ((val = fn(val[1]))) result.push(val[0]);
return result;
};
Voici un exemple d'utilisation de la fonction unfold :
var f = (n) => (n > 50 ? false : [-n, n + 10]);
unfold(f, 10); // [-10, -20, -30, -40, -50]
Cela produira un tableau avec des valeurs générées par la fonction itératrice f à partir de la valeur initiale de 10. La fonction itératrice génère un tableau avec deux éléments à chaque étape : la négation de la valeur actuelle de la graine et la valeur de la graine suivante, qui est incrémentée de 10. Le processus continue jusqu'à ce que la valeur de la graine soit supérieure à 50, auquel moment la fonction retourne false.
Summary
Félicitations! Vous avez terminé le laboratoire Unfold Array. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.