While the intersection operation is achieved by creating a new set with the common elements that both setA and setB have, the difference operation is achieved by creating a new set with the elements that setA has but setB does not. Take a look at the following code:
const difference = (set1, set2) => { const differenceSet = new Set(); set1.forEach(value => { if (!set2.has(value)) { // {1} differenceSet.add(value); } }); return differenceSet;};console.log(difference(setA, setB));
The only difference between the intersection function and the difference simulations is line {1} as we only want to add the different Set elements that setA has and setB does not.