هل ForEach وMap متماثلتان؟
جزء من قسم المنطق وتدفق التنفيذ في رحلة JavaScript على Coddy. الدرس 56 من 65.
مع أن forEach() وmap() طريقتان للمصفوفات تُستخدمان للتكرار، فإن لكل منهما غرضًا مختلفًا وسلوكًا مميزًا:
forEach():
- تنفّذ دالةً مُمرَّرة مرةً واحدة لكل عنصر في المصفوفة.
- لا تنشئ مصفوفة جديدة.
- تُرجع
undefined. - لا يمكن تسلسلها مع أساليب المصفوفات الأخرى.
map():
- تنشئ مصفوفة جديدة تحتوي على نتائج استدعاء دالة مُعطاة لكل عنصر في المصفوفة.
- تعيد مصفوفة جديدة بالطول نفسه للمصفوفة الأصلية.
- يمكن ربطها بطرائق مصفوفات أخرى.
مثال:
const numbers = [1, 2, 3, 4];
// forEach
numbers.forEach(num => console.log(num * 2));
// يطبع في السجل: 2, 4, 6, 8
// يُرجع: undefined// map
const doubled = numbers.map(num => num * 2);
console.log(doubled);
// المخرجات: [2, 4, 6, 8]
// يُرجع: مصفوفة جديدة [2, 4, 6, 8]استخدم forEach() عندما تريد إجراء عملية على كل عنصر دون إنشاء مصفوفة جديدة. استخدم map() عندما تريد تحويل كل عنصر وإنشاء مصفوفة جديدة بالنتائج.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفق التنفيذ
1السلاسل النصية بالتفصيل
أساسيات السلاسل النصيةالتكرار على السلاسل النصيةالقوالب النصيةدوال السلاسل النصيةمراجعة - ناسج السلاسل النصية2المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة: المصفوفات ثنائية الأبعادجمع المصفوفات وطرحهاالمصفوفات متعرجة الأبعادالمصفوفات ثلاثية الأبعاد وما بعدهاأنماط شائعة للمصفوفات ثنائية الأبعادمراجعة: كل ما يتعلق بالمصفوفات5المجموعات - الجزء الأول
ما هي المجموعة؟التكرار على عناصر المجموعةإضافة عنصرإزالة عنصرالتحقق من وجود عنصرالحجم والتحقق من الفراغالنسخ والمسحمراجعة - أساسيات المجموعات8موضوعات شيقة حول المصفوفات
تفكيك المصفوفاتصياغة الانتشار في المصفوفاتالمصفوفات المتناثرةمراجعة - ورشة عمل حول المصفوفات3JSON الجزء 1
ما هو JSON؟التحقق من وجود المفتاحطرق الكائنعامل الانتشار الجزء 1عامل الانتشار الجزء 2حذف المفاتيحمراجعة - معالجة المفاتيح في JSON6المجموعات - الجزء الثاني
رياضيات - اتحاد المجموعاترياضيات - تقاطع المجموعاترياضيات - الفرق بين المجموعاترياضيات - الفرق المتماثلالمجموعات الجزئية والمجموعات الشاملةمراجعة - مجموعة الأصدقاء9طرق Array المتقدمة
طريقتا Join وSplitطريقة Mapطريقة Filterطريقة Reduceربط طرق Arrayهل ForEach وMap متماثلتان؟طريقة Sortطريقتا Find وFindIndexمراجعة - خبير ربط الطرقتدرّب بنفسك: مترجم JavaScript عبر الإنترنت