TypeScript Enums एक ऐसे data type हैं जो आपको related values के group को एक साथ store करने कि facility देते हैं। Enum का full form है "Enumeration", और इसका main काम होता है एक meaningful नाम देना उन values को जो otherwise integers या strings होते।

इससे आपका code ज़्यादा readable और maintainable होता है, और errors hone के chances कम हो जाते हैं।

What is Enum ?

Enums एक special class होती है TypeScript में जो एक predefined set of values को represent करती है।

Enum का use हम तब करते हैं जब हमें एक group of constant values को define करना होता है जो एक साथ related होती हैं। ये values या तो strings हो सकती हैं या integers, और आप इन्हे किसी भी order में use कर सकते हैं।

Example

enum Direction { Up, Down, Left, Right }

यहां Direction एक enum है जिसमे 4 values define कि गयी हैं : Up, Down, Left, और Right. By default, ये values numeric होती हैं, जहाँ Up कि value 0, Down कि 1, और ऐसे ही sequentially assign होती हैं।

TypeScript Enum Declaration Types

Enums TypeScript में दो तरीके से declare किये जा सकते हैं -

  • Numeric Enums

  • String Enums

चलिए, इन दोनो types को समझते हैं।

1. TypeScript Numeric Enums

Numeric enums default behaviour होता है। आप इन्हे बिना किसी initial value के declare करते हैं, और ये automatic numbering follow करते हैं, starting from 0.

Example

enum Status { Success, // 0 Warning, // 1 Error // 2 } console.log(Status.Success); // Output: 0 console.log(Status.Error); // Output: 2

आप चाहें तो enum को किसी custom number से start कर सकते हैं, और बाकी values automatically increment हो जाती हैं।

Example

enum Status { Success = 1, Warning, // 2 Error // 3 }

2. TypeScript String Enums

String enums आपको manually values assign करने कि permission देते हैं, जो strings होती हैं। Numeric enums के comparison में, string enums काफी ज़्यादा readable होते हैं।

Example

enum Status { Success = "SUCCESS", Warning = "WARNING", Error = "ERROR" } console.log(Status.Success); // Output: "SUCCESS"

String enums का main advantage ये है कि ये human-readable होते हैं, जो debugging और code reading के time useful होता है।

TypScript Enum Reverse Mapping

TypeScript enums कि एक interesting property है reverse mapping. जब आप numeric enums का use करते हैं, TypeScript आपको reverse mapping कि facility देता है, मतलब आप enum value से उसके नाम को भी retrieve कर सकते हैं।

Example

enum Status { Success, Warning, Error } console.log(Status[0]); // Output: "Success"

यहां आप Status[0] लिखकर Success value को retrieve कर सकते हैं।

Enum with Computed and Constant Members

TypeScript enums में आप constant और computed members का use कर सकते हैं।

Constant members वो होते हैं इनकी values compile-time पे fixed होती हैं, जबकि computed members वो होते हैं जिनकी values runtime पे calculate कि जाती हैं।

Example

enum Colors { Red = 1, Blue = Red * 2, // Computed member Green = 4 } console.log(Colors.Blue); // Output: 2

TypeScript Heterogeneous Enums

Heterogeneous enums वो होते हैं जहाँ आप mixed values (string और number) का use करते हैं। ये usually recommend नहीं किया जाता, लेकिन कुछ specific cases में आपको need पड़ सकती है।

Example

enum MixedEnum { No = 0, Yes = "YES" } console.log(MixedEnum.No); // Output: 0 console.log(MixedEnum.Yes); // Output: "YES"

Enum Usage in Functions

आप enums को functions के arguments और return types में भी use कर सकते हैं। ये practice आपके code को ज़्यादा type-safe बनाता है और आपको predictable input और output मिलते हैं।

Example

enum Days { Monday, Tuesday, Wednesday } function getDay(day: Days) { switch (day) { case Days.Monday: return "It's Monday!"; case Days.Tuesday: return "It's Tuesday!"; case Days.Wednesday: return "It's Wednesday!"; } } console.log(getDay(Days.Monday)); // Output: "It's Monday!"

इस example में getDay() function को Days enum का एक value pass किया गया है, और ये function उसके हिसाब से result return कर रहा है।

Enum Use-Cases

Enums का use तब होता है जब हमें predefined constant values कि list चाहिए, जैसे:

  • API Response Status: Success, Failure, Pending

  • Days of the Week : Monday, Tuesday, Wednesday

  • User Roles : Admin, User, Guest

इन scenarios में enums का use करने से आपको readability और type safety का advantange मिलता है।

Conclusion

TypeScript Enums एक काफी useful feature हैं जो आपको constant values के group को efficiently handle करने कि facility देते हैं।

Enums का use आपके code को predictable, readable, और maintainable बनाता है। चाहे आप numeric enums का use कर रहे हो या string enums का, ये feature TypeScript कि type-safety को और enhance करता है।

Hey ! I'm Rahul founder of learnhindituts.com. Working in IT industry more than 4.5 years. I love to talk about programming as well as writing technical tutorials and blogs that can help to others .... keep learning :)

Get connected with me - LinkedIn Twitter Instagram Facebook