An intersection is part of two or more collections that are the same. Immutable.js sets have built-in capabilities for finding intersections.
Let's start by creating two sets:
const myFirstSet = Set.of(1, 2, 3, 4, 5, 6); const mySecondSet = Set.of(2, 4, 6, 8, 10);
The intersection between these two sets are the values 2
, 4
, and 6
—they exist in both collections. Sets have an intersect()
method that will find this intersection for you, as follows:
const myIntersection = myFirstSet.intersect(mySecondSet); console.log('myFirstSet', myFirstSet.toJS()); // -> myFirstSet [ 1, 2, 3, 4, 5, 6 ] console.log('mySecondSet', mySecondSet.toJS()); // -> mySecondSet [ 2, 4, 6, 8, 10 ] console.log('myIntersection', myIntersection.toJS()); // -> myIntersection [ 6, 2, 4 ]
The values in myIntersection
look good, but they appear to be out of order. This is because the iteration order of sets isn't defined.