$isArray (التحقق مما إذا كانت القيمة مصفوفة)

آخر تحديث: 2026-10-09

$isArray (التحقق مما إذا كانت القيمة مصفوفة)

يُرجع $isArray قيمة منطقية تشير إلى ما إذا كان التعبير يُقيَّم إلى مصفوفة. يُستخدم كثيرًا داخل $cond للتفرع حسب النوع: عندما يكون الحقل إما قيمة قياسية أو مصفوفة، افحص أولًا ثم اختر مسار المعالجة. كما يحرس عوامل مثل $size أو $map التي تقبل المصفوفات فقط، مانعًا الأخطاء. وهو فحص نوع تعبيرات التجميع ويمكن دمجه مع $type لفحوصات أنواع BSON دقيقة. الحقل المفقود يُرجع false لا خطأً.

الفئةالمصفوفة
إصدار MongoDB1.0+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ $isArray: <expression> }

⚙️ المعلمات

تعبيرأي تعبير يُفحَص ناتجه من حيث كونه مصفوفة.

القيمة المرجعة:قيمة منطقية: ‏true عندما تكون النتيجة مصفوفة، وإلا false

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// $isArray: الوسوم قد تكون سلسلة أو مصفوفة، احسبهما معًا
db.products.aggregate([
  { $project: {
      tagCount: { $cond: { if: { $isArray: '$tags' }, then: { $size: '$tags' }, else: 1 } }
  } }
])

المخرجات:

{ '_id': 1, 'tagCount': 3 }
{ '_id': 2, 'tagCount': 1 }

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qماذا يُرجع $isArray عندما يكون الحقل مفقودًا؟
Aيُرجع false دون رمي خطأ، مما يجعله آمنًا كحارس.
Qهل يميّز $isArray سلسلة عن مصفوفة؟
Aنعم — السلاسل تُرجع false؛ ونوع BSON للمصفوفة فقط يُرجع true.
Qكيف أستخدمه مع $cond؟
Aضع $isArray في موضع if من $cond واكتب فرعين في then/else.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%