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.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 }