AzLearn

الاستنتاج والكتابة الصريحة

Inference and Annotations

مفهوم ~17 دقيقة

الاستنتاج والكتابة الصريحة — Inference and Annotations

TypeScript يستطيع استنتاج أنواع كثيرة بدون أن تكتبها. إذا كتبت const count = 3 فهو يعرف أن القيمة رقم. إذا كتبت const name = "Sara" فهو يعرف أنها نص. لذلك لا تحتاج تكرار النوع في كل مكان. التكرار الزائد يجعل الكود أثقل بدون فائدة.

لكن هناك أماكن تحتاج annotation صريحة. معاملات الدوال أهم مثال، لأن TypeScript لا يعرف ما الذي تنوي تمريره. كذلك القيمة المرجعة للدوال العامة مفيدة لأنها تمنع تغييرات غير مقصودة. إذا كانت دالة public ترجع User[]، فاكتب ذلك لتثبت العقد.

مثال التوازن

index.ts

لاحظ أن trimmed لم نكتب نوعه. الاستنتاج كاف. أما user: User و: string فهما حدود مفيدة للدالة.

قاعدة عملية

اكتب النوع عند الحدود، واترك TypeScript يستنتج داخل التنفيذ. الحدود هي الدوال، APIs، props، والبيانات المشتركة بين ملفات.

تحدي — Challenge