# Determine Whether an Array in JavaScript Is a Subset of Another Array

## Too Long; Didn't Read

Using the [array every method, we can find out if an array is a subset of another array. This method iterates through each element in an array and performs a test on it. If every element in the array passes that test, then the overall `every` method will return true. For each evaluation, we have a "parent" array, and a "subset" array - where we want to check if the "subs" array is fully contained within the parent array.

There are many cases where knowing when an array is a subset of another can be pretty useful - and although usually immediately obvious to the human eye, it can be difficult to evaluate in code.

In the code below, `arr2`

is a **subset** of `arr1`

, but `arr3`

is not.

```
let arr1 = [ 'a', 'b', 'c' ];
let arr2 = [ 'b', 'c' ];
let arr3 = [ 'c', 'd' ];
```

If we want to find out if an array is a subset of another array, the best way to evaluate this is by using the array every method. This method iterates through each element in an array and performs a test on it. If every element in the array passes that test, then the overall `every`

method will return true.

For each evaluation, we have a "parent" array, and a "subset" array - where we want to check if the "subset" array is fully contained within the "parent" array.

To evaluate if one array is a subset of another, we can run `every`

on each element on the "subset" array. Within the `every`

function, we can test if the "parent" array contains each element in the "subset" array. If it does, then `every`

will return `true`

. Otherwise, it'll return `false`

.

This can be accomplished easily with a function like the one shown below - `checkSubset`

will return `true`

should the `subsetArray`

be fully contained within the `parentArray`

:

```
let arr1 = [ 'a', 'b', 'c' ];
let arr2 = [ 'b', 'c' ];
let arr3 = [ 'c', 'd' ];
let checkSubset = (parentArray, subsetArray) => {
return subsetArray.every((el) => {
return parentArray.includes(el)
})
}
checkSubset(arr1, arr2); // returns true
checkSubset(arr1, arr3); // returns false
```

Also published here.