map() (تحويل مؤشر)

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

map() (تحويل مؤشر)

تطبّق map() تحويلًا على كل مستند في مؤشر وتُعيد النتائج كمصفوفة، مثل `db.users.find().map(function(u) { return u.name })`. فكّر فيها على أنها forEach() مع جمع النتائج — مفيدة لاستخراج الحقول أو إعادة تشكيل البيانات. لاحظ أن map() تستهلك المؤشر بالكامل وتُعيد مصفوفة وليس مؤشرًا جديدًا.

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

📝 الصيغة

db.<collection>.find(<filter>).map(<transform>)

⚙️ المعلمات

دالة التحويلدالة تُحوّل مستندًا إلى قيمة جديدة، مثل function(u) { return u.name }.

القيمة المرجعة:مصفوفة بالقيم المحوَّلة.

▶ مثال

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

// map: استخراج أسماء كل المستخدمين البالغين
const names = db.users.find({ age: { $gte: 18 } }).map(u => u.name)
names

المخرجات:

[ 'Alice', 'Bob', 'Cara' ]

📌 ملاحظات

📚 دروس ذات صلة

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

Qما الفرق بين map و forEach؟
Aتُعيد map() مصفوفة من القيم المحوَّلة للاستخراج؛ بينما تشغّل forEach() استدعاءً رجعيًا ولا تُعيد شيئًا.
Qهل نتيجة map مصفوفة؟
Aنعم، تُعيد map() مصفوفة — مثل forEach مع جمع النتائج.
Qهل تعدّل map المستندات في قاعدة البيانات؟
Aلا — يعمل التحويل على نسخ في الذاكرة على العميل.
Web-Tutorial.com

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

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

100%