شمارشی ها (Enums)
«شمارشی تایپ اسکریپت» (TypeScript Enum) یک نوع ویژه است. شمارشی مجموعه ای از ثابت هاست. ثابت (Constant) یعنی متغیری که تغییر نمی کند. با شمارشی، کد خواناتر و ایمن تر می شود. مثل فهرست چهار جهت قطب نما در جغرافیای مدرسه.
شمارشی عددی پیش فرض
در شمارشی عددی، مقدار عضو اول صفر است. سپس هر عضو یکی اضافه می شود. بنابراین ترتیب مهم است و مقداردهی خودکار انجام می شود.
enum CardinalDirections {
North,
East,
South,
West
}
let currentDirection = CardinalDirections.North;
console.log(currentDirection); // 0
currentDirection = 'North' as any; // خطا در حالت تایپی: رشته مجاز نیست
شمارشی عددی با مقدار آغازین
می توانی مقدار عضو اول را تعیین کنی. سپس بقیه خودکار افزوده می شوند. این شبیه شماره گذاری از 1 به جای 0 است.
enum CardinalDirections {
North = 1,
East,
South,
West
}
console.log(CardinalDirections.North); // 1
console.log(CardinalDirections.West); // 4
شمارشی عددی کاملاً مقداردهی شده
می توانی به هر عضو عدد جدا بدهی. در این حالت دیگر افزایشی خودکار نداریم. این برای کدهای وضعیت بسیار رایج است.
enum StatusCodes {
NotFound = 404,
Success = 200,
Accepted = 202,
BadRequest = 400
}
console.log(StatusCodes.NotFound); // 404
console.log(StatusCodes.Success); // 200
شمارشی رشته ای (String Enums)
در شمارشی رشته ای، هر عضو مقدار رشته ای دارد. این حالت خوانایی بهتری دارد. زیرا مقدارها معنی دار هستند.
enum CardinalDirections {
North = 'North',
East = 'East',
South = 'South',
West = 'West'
}
console.log(CardinalDirections.North); // "North"
console.log(CardinalDirections.West); // "West"
هشدار: ترکیب رشته ای و عددی ممکن است گیج کننده شود. بهتر است نوع ها را قاطی نکنی.
برای آشنایی با شیءها به انواع شیء برو. سپس برای تعریف های قابل استفاده مجدد، علیاس ها و اینترفیس ها را ببین.
گام های عملی شمارشی تایپ اسکریپت
- یک شمارشی عددی ساده بساز.
- مقدار آغازین عضو اول را تعیین کن.
- برای هر عضو مقدار خاص بده.
- یک شمارشی رشته ای ایجاد کن.
جمع بندی سریع
- شمارشی مجموعه ای از ثابت هاست.
- حالت پیش فرض از صفر می شمارد.
- می توانی مقدار آغازین تعیین کنی.
- شمارشی رشته ای خواناتر است.
- ترکیب نوع ها را پرهیز کن.