Введение
В этом практическом занятии мы изучим, как использовать конструктор Set и метод Array.prototype.every() для определения, является ли один итерируемый объект супермножеством другого. Практическое занятие проведет вас по созданию функции, которая проверяет, содержит ли первый итерируемый объект все элементы второго итерируемого объекта, исключая любые дубликаты. В конце практического занятия вы будете лучше понимать, как работать с множествами в JavaScript.
Функция для проверки, является ли одно множество супермножеством другого множества
Для проверки, является ли одно множество супермножеством другого множества, используйте функцию superSet(). Сначала откройте Терминал/SSH и введите node, чтобы начать практиковаться в написании кода. Затем следуйте следующим шагам:
- Создайте новый объект
Setиз каждого итерируемого объекта с использованием конструктораSet. - Используйте
Array.prototype.every()иSet.prototype.has(), чтобы проверить, содержится ли каждое значение во втором итерируемом объекте в первом. - Функция возвращает
true, если первый итерируемый объект является супермножеством второго, исключая дублирующиеся значения. В противном случае возвращаетсяfalse.
const superSet = (a, b) => {
const sA = new Set(a),
sB = new Set(b);
return [...sB].every((v) => sA.has(v));
};
Используйте superSet() с двумя множествами в качестве аргументов, чтобы проверить, является ли одно множество супермножеством другого множества.
superSet(new Set([1, 2, 3, 4]), new Set([1, 2])); // true
superSet(new Set([1, 2, 3, 4]), new Set([1, 5])); // false
Резюме
Поздравляем! Вы завершили практическое занятие по супермножеству итерируемых объектов. Вы можете практиковаться в других практических занятиях в LabEx, чтобы улучшить свои навыки.