💠

JavaScript Set — المحاكي الاحترافي

استكشف Set بتصور بصري فريد — لا تكرار، ترتيب الإدخال، أي نوع

لا تكرار ✦ ترتيب الإدخال SameValueZero
⚡ العمليات
💠 تصور الـ Set الحي Set { 0 values }
⚡ هذه القيمة موجودة بالفعل — Set لا تقبل التكرار!
// Set فارغة — ابدأ بإضافة قيم
ترتيب الإدخال: // فارغة
0
size
0
قيم فريدة
آخر عملية
🔬 عمليات نظرية المجموعات
المجموعة A (الحالية)
{ ... }
المجموعة B (أدخل)
B = { 3, 4, 5, 6, 7 }
∪ الاتحاد (Union)
∩ التقاطع (Intersection)
A − B الفرق (Difference)
△ الفرق التناظري
set-operations.js
// الاتحاد: const union = new Set([...A, ...B]) // التقاطع: const inter = new Set([...A].filter(x => B.has(x))) // الفرق A−B: const diff = new Set([...A].filter(x => !B.has(x))) // الفرق التناظري: const sym = new Set([...A,...B].filter(x => !(A.has(x) && B.has(x))))
📜 سجل العمليات
// لا عمليات بعد...
⚖️ Set مقابل Array
الميزةArraySet
التكرارمسموحممنوع ✦
الوصولarr[i] بالـ indexset.has(val) فقط
الإضافةpush/unshiftadd() فقط
has()includes() O(n)has() O(1) ✅
إزالة تكرارمعقد[...new Set(arr)] ✅
الحجم.length.size
الترتيببالـ indexترتيب الإدخال
📋 مرجع سريع
const s = new Set([1,2,3]) s.add(4) // إضافة s.add(2) // تُجاهَل (موجودة) s.has(3) // → true s.delete(2) // → true s.size // عدد العناصر s.clear() // مسح الكل [...s] // تحويل لمصفوفة // إزالة تكرار مصفوفة: [...new Set([1,2,2,3,3])] // [1,2,3]
🔧 أداة إزالة التكرار
النتيجة:
// أدخل مصفوفة...