الدرس 2 من 8
العدّ والتكرار
- 12 دقيقة
- 6 فحوص
- 3 تلميحات
- إلى المطلوب
هدف الدرس
كم مرّة ظهرت كل قيمة
الشرح
«كم طلبًا في كل حالة؟» و«ما الكلمة الأكثر تكرارًا؟» سؤالان من النوع نفسه، وجوابهما أن تعدّ مرّات ظهور كل قيمة.
وMap أنسب هنا من الكائن العادي، لأنها تقبل مفتاحًا من أي نوع، ولا ترث شيئًا من Object.prototype، فلا تفسدها كلمة مثل constructor.
والطريقة ثابتة لا تتغيّر: map.set(k, (map.get(k) ?? 0) + 1).
المطلوب
اكتب countBy(arr) لتُرجع Map فيها عدد مرّات ظهور كل قيمة، وtopOne(arr) لتُرجع القيمة الأكثر تكرارًا.
الفحوص
6 فحوص- الدالة countBy تُرجع Map
- العدّ صحيح
- المصفوفة الفارغة تُرجع Map فارغة
- مفتاح مثل constructor لا يفسد العدّ
- الدالة topOne تُرجع القيمة الأكثر تكرارًا
- الدالة topOne تعمل مع الأرقام أيضًا