Introduction
Dans ce laboratoire, nous allons explorer la manière de vérifier si un tableau est contenu dans un autre tableau en JavaScript. Nous utiliserons diverses méthodes de tableau telles que for...of, Set, some() et filter() pour écrire une fonction qui peut déterminer si les éléments du premier tableau sont présents dans le second tableau, quelle que soit leur ordre. Ce laboratoire vous aidera à comprendre comment manipuler les tableaux en JavaScript et à écrire du code efficace pour résoudre des problèmes de programmation courants.
Fonction pour vérifier si un tableau est contenu dans un autre tableau
Pour commencer à coder, ouvrez le Terminal/SSH et tapez node. Cette fonction vérifie si tous les éléments du premier tableau sont présents dans le second tableau, quelle que soit leur ordre.
Voici les étapes à suivre :
- Utilisez une boucle
for...ofpour itérer sur unSetcréé à partir du premier tableau. - Appliquez
Array.prototype.some()pour vérifier si toutes les valeurs distinctes sont présentes dans le second tableau. - Utilisez
Array.prototype.filter()pour comparer le nombre d'occurrences de chaque valeur distincte dans les deux tableaux. - Si le compte de tout élément est supérieur dans le premier tableau que dans le second, renvoyez
false. Sinon, renvoyeztrue.
Consultez le code ci-dessous pour voir comment cela fonctionne :
const isContainedIn = (a, b) => {
for (const v of new Set(a)) {
if (
!b.some((e) => e === v) ||
a.filter((e) => e === v).length > b.filter((e) => e === v).length
)
return false;
}
return true;
};
Pour tester la fonction, utilisez le code suivant :
isContainedIn([1, 4], [2, 4, 1]); // true
Résumé
Félicitations ! Vous avez terminé le laboratoire sur le tableau contenu dans un autre tableau. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.