2 집합의 차이는 빼는 집합이 빼는 집합에서 모든 요소를 제거해야 함을 의미합니다. 그래서 우리는 두 번째 세트를 반복하고 첫 번째 세트에서 그 안에 있는 모든 요소를 제거할 수 있습니다.
예시
static difference(s1, s2) { if (!s1 instanceof MySet || !s2 instanceof MySet) { console.log("The given objects are not of type MySet"); return null; } let newSet = new MySet(); s1.forEach(elem => newSet.add(elem)); s2.forEach(elem => newSet.delete(elem)); return newSet; }
다음을 사용하여 테스트할 수 있습니다.
예시
const testSet1 = new MySet(); testSet1.add(1); testSet1.add(2); const testSet2 = new MySet(); testSet2.add(2); testSet2.add(5); let testSet3 = MySet.differnce(testSet1, testSet2); testSet3.display();
출력
이것은 출력을 줄 것입니다 -
{ '1': 1 }
차이점 함수는 ES6 API에도 없습니다. 다음과 같이 Set 클래스에서 이 기능을 사용할 수 있도록 할 수 있습니다. -
예시
Set.difference = function(s1, s2) { if (!s1 instanceof Set || !s2 instanceof Set) { console.log("The given objects are not of type Set"); return null; } let newSet = new Set(); s1.forEach(elem => newSet.add(elem)); s2.forEach(elem => newSet.delete(elem)); return newSet; }
−
를 사용하여 이것을 테스트할 수 있습니다.예시
let setA = new Set([1, 2, 3, 4]); let setB = new Set([2, 3]); console.log(Set.difference(setA, setB));
출력
이것은 출력을 줄 것입니다 -
Set { 1, 4 }