به روزرسانی های نسخه 5 (5 Updates)
در به روزرسانی های نسخه 5، تایپ اسکریپت راحت تر و دقیق تر شد. این تغییرها «کیفیت زندگی (QoL)» را بالا می برند و «ایمنی نوعی (Type Safety)» را سفت تر می کنند.
انواع قالبی (Template Literal Types)
«نوع قالبی» یعنی ساختن تایپ از روی الگوی رشته. مثل ساخت برچسب های رنگ در بازی که فقط یک فرم خاص می گیرند.
type Color = "red" | "green" | "blue";
type HexColor<T extends Color> = `#${string}`;
// Usage:
let myColor: HexColor<"blue"> = "#0000FF";
برچسب برای امضای ایندکس (Index Signature Labels)
می توان کلیدهای پویا را با قالب نشانه گذاری کرد. پس، شیءهای متغیر، خواناتر و محدودتر می شوند.
type DynamicObject = { [key: `dynamic_${string}`]: string };
// Usage:
let obj: DynamicObject = { dynamic_key: "value" };
نکته: در نسخه 5، «فیلدهای خصوصی بومی جاوااسکریپت» هم پشتیبانی می شوند. البته کلیدواژه Classes در تایپ اسکریپت همچنان کار می کند.
برای تکمیل مسیر، صفحه انواع کاربردی را ببین. همچنین این صفحه به روزرسانی های نسخه 5 مرجع جمع وجور توست.
گام های تمرینی سریع
- یک نوع قالبی بساز و مقداردهی کن.
- برای کلیدهای پویا، الگو تعریف کن.
- کد را اجرا کن و خروجی را بررسی کن.
جمع بندی سریع
- نسخه 5، تایپ ها را دقیق تر می کند.
- Template Literal Types، تایپ های وابسته به متن می سازد.
- Index Signature Labels، کلیدهای پویا را قالب بندی می کند.
- پشتیبانی از فیلد خصوصی بومی اضافه شده است.