الرياضيات - اتحاد المجموعات
جزء من قسم Logic & Flow في رحلة JavaScript على Coddy — الدرس 36 من 65.
اتحاد مجموعتين A و B هو مجموعة جديدة تحتوي على جميع العناصر من كل من A و B، بدون تكرار.
إليك كيفية إنشاء اتحاد لمجموعتين:
function union(setA, setB) {
return new Set([...setA, ...setB]);
}
const setA = new Set([1, 2, 3]);
const setB = new Set([3, 4, 5]);
const unionSet = union(setA, setB);
console.log(unionSet); // Set(5) { 1, 2, 3, 4, 5 }في هذا المثال، يُستخدم عامل النشر (...) لتحويل كل Set إلى مصفوفة (array)، والتي يتم دمجها بعد ذلك في مصفوفة جديدة. تُستخدم هذه المصفوفة الجديدة لإنشاء Set جديد، مما يؤدي إلى إزالة أي تكرارات تلقائياً.
التحدي
سهلأنشئ دالة تسمى setUnion تأخذ مصفوفتين كمعاملات. يجب أن تقوم الدالة بتحويل تلك المصفوفات إلى مجموعات (sets) وإنشاء مجموعة (Set) جديدة تمثل اتحاد المجموعتين المدخلتين. أخيرًا، قم بتحويل المجموعة إلى مصفوفة وأعدها.
لا تستخدم عامل الانتشار (spread operator) في حلك.
ورقة مرجعية
اتحاد مجموعتين ينشئ مجموعة جديدة تحتوي على جميع العناصر من كلتا المجموعتين، دون تكرار.
إنشاء اتحاد باستخدام عامل النشر (spread operator):
function union(setA, setB) {
return new Set([...setA, ...setB]);
}
const setA = new Set([1, 2, 3]);
const setB = new Set([3, 4, 5]);
const unionSet = union(setA, setB);
console.log(unionSet); // Set(5) { 1, 2, 3, 4, 5 }يقوم عامل النشر (...) بتحويل كل مجموعة (Set) إلى مصفوفة، والتي يتم دمجها بعد ذلك في مصفوفة جديدة لإنشاء مجموعة (Set) جديدة، مما يؤدي إلى إزالة التكرارات تلقائيًا.
جرّب بنفسك
function setUnion(arr1, arr2) {
const set1 = new Set(arr1)
const set2 = new Set(arr2)
// اكتب كودك هنا
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1السلاسل النصية بعمق
أساسيات السلاسل النصيةالتكرار عبر السلاسل النصيةTemplate Literalsدوال السلاسل النصيةمراجعة - String Weaver2المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات5المجموعات - الجزء الأول
ما هي المجموعة؟التكرار عبر المجموعاتإضافة عنصرإزالة عنصرالتحقق من وجود عنصرالحجم وهل هي فارغةالنسخ والمسحملخص - أساسيات المجموعات8مواضيع شيقة حول الـ Arrays
تفكيك الـ Arrayاستخدام الـ Spread Syntax في الـ Arraysالـ Sparse Arraysمراجعة - ورشة عمل الـ Arrays3JSON الجزء الأول
ما هو JSON؟التحقق من وجود المفتاحObject MethodsSpread Operator الجزء الأولSpread Operator الجزء الثانيحذف المفاتيحمراجعة - معالجة مفاتيح JSON6المجموعات - الجزء الثاني
الرياضيات - اتحاد المجموعاتالرياضيات - تقاطع المجموعاتالرياضيات - الفرق بين المجموعاتالرياضيات - الفرق المتناظرالمجموعات الجزئية والمجموعات الفائقةمراجعة - مجموعات الأصدقاء