763 B
763 B
title, tags, expertise, author, cover, firstSeen, lastUpdated
| title | tags | expertise | author | cover | firstSeen | lastUpdated |
|---|---|---|---|---|---|---|
| Superset of iterable | array | intermediate | maciv | blog_images/waves-from-above-2.jpg | 2020-10-11T11:53:19+03:00 | 2020-10-22T20:24:30+03:00 |
Checks if the first iterable is a superset of the second one, excluding duplicate values.
- Use the
Setconstructor to create a newSetobject from each iterable. - Use
Array.prototype.every()andSet.prototype.has()to check that each value in the second iterable is contained in the first one.
const superSet = (a, b) => {
const sA = new Set(a), sB = new Set(b);
return [...sB].every(v => sA.has(v));
};
superSet(new Set([1, 2, 3, 4]), new Set([1, 2])); // true
superSet(new Set([1, 2, 3, 4]), new Set([1, 5])); // false