الدرس 9 من 10
أنواع الدوال
- 12 دقيقة
- 6 معايير للتصحيح
- 3 تلميحات
- إلى المطلوب
هدف الدرس
دوال تُمرَّر ومُعاملات تُغفَل
الشرح
المُعامل الذي يستقبل دالة يُوصف بنوع دالة: fn: (n: number) => number، أي تأخذ رقمًا وتُرجع رقمًا. فتُرفض دالة تنتظر نصًّا، ومن يمرّر (n) => n * 2 لا يحتاج أن يصف n: المترجم يأخذ نوعها من السياق.
وفي TypeScript يجب أن يطابق عدد الوسائط عدد المُعاملات، وما يجوز إغفاله يُعلَن صراحة: note?: string مُعامل اختياري نوعه داخل الدالة string | undefined، وcurrency = "ر.س" قيمة افتراضية يُستنتج منها النوع أيضًا.
والفخ: القيمة الافتراضية تحلّ محلّ undefined وحده. النصّ الفارغ "" يبقى نصًّا فارغًا، فيظهر السعر بلا عملة.
المطلوب
صِف مُعامل fn في transformAll بنوع دالة من رقم إلى رقم، واجعل currency بقيمة افتراضية "ر.س" وnote اختياريًّا.
معايير التصحيح
6 معايير- لا أخطاء أنواع
- الدالة الممرَّرة يجب أن تقبل رقمًا
- ويجب أن تُرجع رقمًا
- transformAll تطبّق الدالة على كل عنصر
- currency و note يجوز إغفالهما
- العملة الافتراضية "ر.س"