Introduction
Dans ce laboratoire, nous allons explorer la manière de vérifier si un sous-ensemble de valeurs dans un itérable est contenu dans un autre itérable. Nous utiliserons le constructeur Set et Array.prototype.every() pour créer une fonction qui vérifie si toutes les valeurs du premier itérable sont présentes dans le second itérable. À la fin de ce laboratoire, vous aurez une meilleure compréhension de la manière de travailler avec les ensembles en JavaScript.
Vérifier si un sous-ensemble d'un itérable est contenu dans un autre itérable
Pour pratiquer la programmation, ouvrez le Terminal/SSH et tapez node. Cette fonction vérifie si le premier itérable est un sous-ensemble du second itérable, en excluant les valeurs dupliquées.
Pour y arriver, vous pouvez faire ce qui suit :
- Créez un nouvel objet
Setà partir de chaque itérable en utilisant le constructeurSet. - Utilisez
Array.prototype.every()etSet.prototype.has()pour vérifier si chaque valeur du premier itérable est contenue dans le second itérable.
Voici une implémentation exemple :
const subSet = (a, b) => {
const setA = new Set(a);
const setB = new Set(b);
return [...setA].every((value) => setB.has(value));
};
Vous pouvez utiliser la fonction subSet en passant deux ensembles à comparer. Par exemple :
subSet(new Set([1, 2]), new Set([1, 2, 3, 4])); // true
subSet(new Set([1, 5]), new Set([1, 2, 3, 4])); // false
Sommaire
Félicitations ! Vous avez terminé le laboratoire "Sous-ensemble d'itérable". Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.