在 TypeScript 中,列舉(Enum)是一種資料型別,用於定義一組命名的常量值。列舉可以幫助開發者更清晰地表達意圖,提高程式碼的可讀性和可維護性。
1. 列舉的基本語法:
enum Direction { Up, Down, Left, Right, } //Direction 列舉定義了四個常量值:Up、Down、Left、Right。預設情況下,列舉成員的值是從 0 開始遞增的。因此,Direction.Up 的值為 0,Direction.Down 的值為 1,以此類推。
2. 修改列舉成員的值:
enum Direction { Up = 1, Down = 2, Left = 3, Right = 4, } //我們為每個列舉成員指定了一個特定的值。現在,Direction.Up 的值為 1,Direction.Down 的值為 2,以此類推。
3. 使用列舉:
let playerDirection: Direction = Direction.Up; console.log(playerDirection); // 輸出:1 //列舉成員可以直接透過列舉型別來訪問,也可以透過列舉的值來訪問。
4. 字串列舉:
enum Color { Red = "RED", Green = "GREEN", Blue = "BLUE", } //列舉成員的值為字串型別。
5. 計算的和常量成員:
enum FileAccess { // 常量成員 None, Read = 1 << 1, Write = 1 << 2, ReadWrite = Read | Write, // 計算的成員 G = "123".length, } //常量成員是指沒有初始化表示式的列舉成員,或者被初始化為常量表示式的列舉成員。計算的成員是指被初始化為非常量表示式的列舉成員。
6. 常用列舉操作:
- 獲取列舉成員的數量:
Object.keys(Direction).length
- 獲取列舉成員的名稱:
Direction[1]
返回Up