একটি enum একটি সেট named constant সংজ্ঞায়িত করে। TypeScript এ numeric এবং string enum রয়েছে।
ts
{ , , , }
.;
[];
{
= ,
= ,
}
.;
একটি enum একটি সেট named constant সংজ্ঞায়িত করে। TypeScript এ numeric এবং string enum রয়েছে।
{ , , , }
.;
[];
{
= ,
= ,
}
.;
অধিকাংশ TypeScript types এর বিপরীতে (যা compile time তে অদৃশ্য হয়ে যায়), একটি সাধারণ enum আপনার bundle এ একটি JavaScript object নির্গত করে। এই কারণেই অনেক দল string literals এর union এবং as const পছন্দ করে, যা বিশুদ্ধভাবে type-level:
// often preferred — zero runtime cost, easy to read in logs
const Status = { Active: "ACTIVE", Inactive: "INACTIVE" } as const;
type Status = typeof Status[keyof typeof Status]; // "ACTIVE" | "INACTIVE"
// or simply:
type Direction = "up" | "down" | "left" | "right";
const enum E { A, B } // inlined at compile time — no runtime object, but has tooling caveats
Enum গুলি fixed sets (states, roles, directions) এ অর্থপূর্ণ নাম দেয় এবং সেগুলিকে একটি namespace এর অধীনে গোষ্ঠীভুক্ত করে।
কিন্তু কারণ তারা runtime code নির্গত করে এবং quirks আছে (numeric enum গুলি loosely checked হয়), আধুনিক TypeScript প্রায়ই সহজ cases এর জন্য string-literal unions পছন্দ করে — তারা হালকা এবং প্রাকৃতিকভাবে serialize হয়।
Enums ব্যবহার করুন যখন আপনি namespacing বা reverse mapping চান।