ملخص: استخدام الـ Enums
جزء من قسم مقدمة إلى TypeScript في رحلة JavaScript على Coddy. الدرس 56 من 73.
التحدي
سهلقم بإنشاء string enum باسم OrderStatus يحتوي على أربعة أعضاء:
Pendingبقيمة أولية"Pending"Shippedبقيمة أولية"Shipped"Deliveredبقيمة أولية"Delivered"Cancelledبقيمة أولية"Cancelled"
قم بإنشاء واجهة (interface) باسم Order بالخصائص التالية:
idمن نوعnumbercustomerNameمن نوعstringstatusمن نوعOrderStatus
قم بإنشاء ثلاثة كائنات (objects) للطلبات باستخدام واجهة Order:
order1بمعرف1001، و customerName"Alice Johnson"، وحالةOrderStatus.Pendingorder2بمعرف1002، و customerName"Bob Smith"، وحالةOrderStatus.Shippedorder3بمعرف1003، و customerName"Carol Davis"، وحالةOrderStatus.Delivered
قم بإنشاء دالة باسم displayOrderInfo تأخذ معاملًا واحدًا:
orderمن نوعOrder
يجب أن تقوم الدالة بطباعة رسالة بالتنسيق التالي: "Order #[id] for [customerName] is [status]" وأن يكون نوع الإرجاع الخاص بها هو void.
قم بطباعة المخرجات التالية:
- استدعاء
displayOrderInfoمعorder1 - استدعاء
displayOrderInfoمعorder2 - استدعاء
displayOrderInfoمعorder3 - طباعة قيمة
OrderStatus.Cancelled - طباعة قيمة
order2.status
جرّب بنفسك
// TODO: اكتب كودك هنا
// قم بإنشاء enum باسم OrderStatus، وواجهة Order، وكائنات الطلب (order objects)، ودالة displayOrderInfo
// اطبع المخرجات المطلوبةجميع دروس مقدمة إلى TypeScript
1البداية مع TS
ما هي TypeScript؟لماذا نستخدم TypeScript؟أول كود TypeScript لكعملية الـ Compilation والأخطاءملخص: مقدمة في TS4التعامل مع الدوال
تحديد أنواع المعاملات وقيم الإرجاعتحديد أنواع Arrow Functionsنوع الإرجاع 'void'المعاملات الاختيارية باستخدام '?'القيم الافتراضية للمعاملاتتحديد أنواع Rest Parametersتعريف أنواع الدوالملخص: بناء دوال محددة الأنواع2الأنواع الأساسية
الأنواع الأساسية: str, num, booleanالنوع 'any': مخرج الهروبالنوع 'unknown'التعامل مع 'null' و 'undef'استنتاج الأنواع في التطبيق العمليتوضيحات الأنواع الصريحةمراجعة: تدريب على الأنواع الأساسية5الأنواع: الأسماء المستعارة، الاتحادات والتقاطعات
الأسماء المستعارة للأنواع الأساسية (Primitives)أنواع الاتحاد ('|')التعامل مع أنواع الاتحادالأنواع الحرفية (Literal Types)أنواع التقاطع ('&')دمج الأسماء المستعارة للأنواعملخص: تركيبات الأنواع المتقدمة3هياكل البيانات: المصفوفات و Tuple
المصفوفات محددة النوع (Typed Arrays)معدل 'readonly' للمصفوفاتما هو الـ Tuple؟تعريف والوصول إلى الـ Tuplesتفكيك الـ Tuples (Destructuring)الـ Tuples للقراءة فقط (Readonly)المصفوفات محددة النوع متعددة الأبعاداستخدام Spread Operator مع المصفوفاتملخص: المصفوفات و Tuples6تحديد أنواع الكائنات والواجهات
توصيف أنواع الكائنات المضمنة (Inline)الأسماء المستعارة للأنواع (Type Aliases) للكائناتمقدمة عن الواجهات (Interfaces)الواجهات (Interfaces) مقابل الأسماء المستعارة للأنواع (Type Aliases)الخصائص الاختيارية وخصائص القراءة فقط (Readonly)توسيع الواجهات والأنواعإضافة الدوال (Methods) إلى الواجهاتملخص: تحديد هياكل الكائناتتدرّب بنفسك: Playground لـ TypeScript