২টি সেট যোগ করার অপারেশনকে ইউনিয়ন বলা হয়। আপনাকে একটি সেট থেকে অন্য সেটে প্রতিটি অবজেক্ট যোগ করতে হবে ডুপ্লিকেট চেক করে। আমরা ইতিমধ্যে ইমপ্লিমেন্ট করা ২টি মেথড ব্যবহার করে এই মেথড ইমপ্লিমেন্ট করতে পারি।
আমরা এই ফাংশনটি স্ট্যাটিক ফাংশন হিসেবে ইমপ্লিমেন্ট করব কারণ আমরা এক্সিস্টিং সেটগুলো মিউটেট করতে চাই না, বরং একটি নতুন সেট তৈরি করে রিটার্ন করতে চাই। আমাদের প্রথমে চেক করতে হবে পাস করা অবজেক্টটি কি আসলেই MySet ক্লাসের ইনস্ট্যান্স।
উদাহরণ
static union(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.add(elem)); newSet; }আপনি এটি টেস্ট করতে পারেন −
উদাহরণ
const testSet1 = new MySet(); testSet1.add(1); testSet1.add(2); const testSet2 = new MySet(); testSet2.add(2); testSet2.add(5); let testSet3 = MySet.union(testSet1, testSet2); testSet3.display();
আউটপুট
এটি আউটপুট দেবে −
{ '1': '1', '2': '2', '5': '5' }নোট করুন যে ES6 API-তে ও union ফাংশন নেই। আপনি এই ফাংশনটি Set ক্লাসে নিচেরভাবে উপলব্ধ করতে পারেন &minusl
উদাহরণ
Set.union = 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.add(elem)); return newSet; }আপনি এটি টেস্ট করতে পারেন −
উদাহরণ
let setA = new Set([1, 2, 3, 4]); let setB = new Set([2, 3]); console.log(Set.union(setA, setB));
আউটপুট
এটি আউটপুট দেবে −
Set { 1, 2, 3, 4 }