Introduction
Dans ce laboratoire, nous allons travailler sur un défi de programmation JavaScript qui implique la manipulation d'ensembles d'éléments (arrays). L'objectif de ce laboratoire est d'écrire une fonction qui supprime des éléments de la fin d'un tableau jusqu'à ce qu'une condition spécifique soit remplie, et renvoie les éléments supprimés. Vous utiliserez diverses méthodes de tableaux JavaScript et une fonction de rappel pour résoudre ce défi.
Suppression d'éléments d'un tableau à partir de la fin jusqu'à ce qu'une condition soit remplie
Pour commencer à pratiquer la programmation, ouvrez le Terminal/SSH et tapez node.
Voici une fonction qui supprime des éléments de la fin d'un tableau jusqu'à ce que la fonction passée renvoie false. Elle renvoie ensuite les éléments supprimés.
Pour l'utiliser, créez une copie inversée du tableau à l'aide de l'opérateur de propagation (...) et de Array.prototype.reverse(). Ensuite, bouclez sur la copie inversée à l'aide d'une boucle for...of sur Array.prototype.entries() jusqu'à ce que la valeur renvoyée par la fonction soit fausse.
La fonction de rappel, fn, accepte un seul argument qui est la valeur de l'élément. Enfin, renvoyez les éléments supprimés à l'aide de Array.prototype.slice().
const takeRightWhile = (arr, fn) => {
for (const [i, val] of [...arr].reverse().entries())
if (!fn(val)) return i === 0 ? [] : arr.slice(-i);
return arr;
};
Voici un exemple d'utilisation de la fonction :
takeRightWhile([1, 2, 3, 4], (n) => n >= 3); // [3, 4]
Sommaire
Félicitations ! Vous avez terminé le laboratoire Suppression d'éléments d'un tableau à partir de la fin jusqu'à ce que la condition soit remplie. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.