Prepare repository for merge
This commit is contained in:
24
javascript/snippets/super-set.md
Normal file
24
javascript/snippets/super-set.md
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
title: Superset of iterable
|
||||
type: snippet
|
||||
tags: [array]
|
||||
cover: waves-from-above-2
|
||||
dateModified: 2020-10-22T20:24:30+03:00
|
||||
---
|
||||
|
||||
Checks if the first iterable is a superset of the second one, excluding duplicate values.
|
||||
|
||||
- Use the `Set` constructor to create a new `Set` object from each iterable.
|
||||
- Use `Array.prototype.every()` and `Set.prototype.has()` to check that each value in the second iterable is contained in the first one.
|
||||
|
||||
```js
|
||||
const superSet = (a, b) => {
|
||||
const sA = new Set(a), sB = new Set(b);
|
||||
return [...sB].every(v => sA.has(v));
|
||||
};
|
||||
```
|
||||
|
||||
```js
|
||||
superSet(new Set([1, 2, 3, 4]), new Set([1, 2])); // true
|
||||
superSet(new Set([1, 2, 3, 4]), new Set([1, 5])); // false
|
||||
```
|
||||
Reference in New Issue
Block a user