TypeScript 聯合類型(Union Types)
TypeScript 是一種 JavaScript 的超集,它提供了類型系統,讓開發者可以在程式碼中指定變數的類型,以提升程式碼的可讀性和可維護性。其中,聯合類型(Union Types)是 TypeScript 中一種非常有用的類型,它可以讓開發者指定一個變數可以接受多種類型的值。
聯合類型的語法很簡單,只要將多種類型用 “|” 符號隔開即可,例如:
let myVariable: string | number;
上面的程式碼表示,myVariable 變數可以接受字串類型或數字類型的值。
聯合類型也可以用於函式的參數,例如:
function add(a: string | number, b: string | number): string | number { return a + b; }
上面的函式 add() 接受兩個參數,兩個參數都可以接受字串類型或數字類型的值,並且函式的回傳值也可以是字串類型或數字類型。
聯合類型也可以用於陣列,例如:
let myArray: (string | number)[];
上面的程式碼表示,myArray 陣列可以接受字串類型或數字類型的值。
聯合類型也可以用於物件,例如:
let myObject: { name: string; age: number; gender: string | number; };
上面的程式碼表示,myObject 物件有 name 和 age 屬性,兩個屬性的值分別是字串類型和數字類型,而 gender 屬性的值可以是字串類型或數字類型。
聯合類型是 TypeScript 中一種非常有用的類型,它可以讓開發者指定一個變數可以接受多種類型的值,以提升程式碼的可讀性和可維護性。