$position (ضبط موضع الإدراج)

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

$position (ضبط موضع الإدراج)

يعيّن $position المكان الذي يُدرج فيه $push العناصر. فالعبارة `{ $push: { items: { $each: ['x'], $position: 0 } } }` تُدرج في البداية. تبدأ المواضع من 0؛ والقيم السالبة تُعدّ من النهاية (-1 يُدرج قبل العنصر الأخير). يجب استخدامه داخل $push مع $each ويتألف مع $slice لتحديد سقف طول المصفوفة.

الفئةمعدّل التحديث
إصدار MongoDB2.6+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ $push: { <array field>: { $each: [ <value> ], $position: <position> } } }

⚙️ المعلمات

حقل مصفوفةحقل المصفوفة المراد الإدراج فيه.
موضعفهرس الإدراج، بدءًا من 0؛ القيم السالبة تُحسب من النهاية.

القيمة المرجعة:نتيجة التحديث

▶ مثال

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

// $position: الإدراج في بداية المصفوفة
// تبدأ المواضع من 0
db.tasks.updateOne(
  { _id: 1 },
  { $push: { queue: { $each: ['urgent'], $position: 0 } } }
)

// سالب: الإدراج قبل العنصر الأخير
db.tasks.updateOne(
  { _id: 1 },
  { $push: { queue: { $each: ['normal'], $position: -1 } } }
)

المخرجات:

// يصل urgent في المقدمة؛ ويصل normal قبل العنصر الأخير

📌 ملاحظات

📚 دروس ذات صلة

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

Qهل يجب إقران $position بـ $each؟
Aنعم، يعمل $position فقط داخل $push مع $each.
Qماذا تعني $position: 0؟
Aالإدراج في بداية المصفوفة (الفهرس 0).
Qهل يدعم $position القيم السالبة؟
Aنعم، -1 يُدرج قبل العنصر الأخير.
Web-Tutorial.com

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

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

100%