הסבר פשוט על טיפוסי TypeScript
TypeScript מסתמכת על מערכת טיפוסים (type system). השליטה בה היא הצעד הראשון שלכם לכתיבת קוד טוב יותר.
טיפוסים בסיסיים
TypeScript משתמשת בטיפוסים דומים לטיפוסים הראשוניים (primitives) של JavaScript:
• string: עבור טקסט.
• number: עבור כל המספרים (שלמים ועשרוניים).
• boolean: עבור ערכי אמת (true) או שקר (false).
הסקת טיפוסים (Type Inference)
אתם לא תמיד חייבים לכתוב את הטיפוס. TypeScript לרוב מנחשת את הטיפוס על סמך הערך שסיפקתם. זה נקרא הסקה (inference).
כלל מנחה: • תנו ל-TypeScript להסיק את הטיפוסים עבור משתנים מקומיים. • כתבו טיפוסים מפורשים עבור פרמטרים של פונקציות וטיפוסי החזרה.
מערכים ו-Tuples
מערכים (Arrays) מחזיקים מספר ערכים מאותו טיפוס.
• דוגמה: let tags: string[] = ["ts", "js"];
Tuples הם מערכים בעלי אורך קבוע וטיפוסים ספציפיים לכל מיקום.
• דוגמה: let user: [string, number] = ["Ramesh", 31];
Union Types
השתמשו ב-union types כאשר ערך יכול להיות ביותר מטיפוס אחד.
• דוגמה: let id: string | number = "abc123";
טיפוסים מיוחדים
ארבעה טיפוסים שנוטים לבלבל מתחילים:
anyזה מכבה את בדיקת הטיפוסים. זה גורם לקוד שלכם להתנהג כמו JavaScript רגיל. השתמשו בזה רק כפתרון אחרון.unknownזו הגרסה הבטוחה שלany. היא אומרת שהערך יכול להיות כל דבר, אך עליכם לבדוק את הטיפוס לפני השימוש בו.voidהשתמשו בזה עבור פונקציות שאינן מחזירות ערך.neverהשתמשו בזה עבור פונקציות שלעולם לא מסתיימות, כמו כאלו שזורקות שגיאות או מריצות לולאות אינסופיות.
סיכום לסדר העבודה שלכם:
• השתמשו בטיפוסים ראשוניים (primitives) עבור רוב הנתונים.
• השתמשו בהסקה (inference) כדי לשמור על קוד נקי.
• השתמשו ב-union types עבור קלטים גמישים.
• הימנעו מ-any.
• השתמשו ב-unknown במקום ב-any כשאינכם בטוחים.