Set.prototype.difference()
فرق مجموعتين Set.prototype.difference()
difference() (ES2025) تُرجع مجموعة جديدة تحوي عناصر هذه المجموعة التي لا تظهر في المجموعة الممرَّرة.
بعكس union() وintersection()، الترتيب هنا مهم جدًا: a.difference(b) تُرجع عناصر a غير الموجودة في b، وb.difference(a) تُرجع العكس تمامًا. من أشهر استخداماتها إيجاد العناصر التي أُضيفت أو حُذفت بين نسختين من مجموعة بيانات.
الصياغة
const result = setA.difference(setB);
⚡ جرّب بنفسك
عدّل الكود واضغط «تحديث» لترى النتيجة فورًا — التجربة أفضل معلّم.
⚡ محرّر تفاعلي
const before = new Set(["a", "b", "c"]);
const after = new Set(["b", "c", "d"]);
console.log(before.difference(after)); // Set {"a"} — حُذف
console.log(after.difference(before)); // Set {"d"} — أُضيفوحدة التحكّم
اضغط «تشغيل» لرؤية النتيجة هنا.
أهم المعاملات
| المعامل | الوظيفة |
|---|---|
| other | المجموعة التي تُستثنى عناصرها من هذه المجموعة |
💡 نصائح عملية
- استخدم زوجًا من difference() بترتيبين معكوسين لإيجاد كل من العناصر المُضافة والمحذوفة بين نسختين
⚠️ أخطاء شائعة
- توقّع أن a.difference(b) وb.difference(a) نتيجتهما متطابقة → مختلفتان تمامًا؛ الترتيب يحدد الاتجاه
خصائص ذات صلة
🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار JAVASCRIPT الكامل بالعربي.