目錄
TypeScript 類型別名(type alias)與接口(interfaces)的區別
TypeScript 是一種強型別的 JavaScript 語言,它提供了兩種定義類型的方式:類型別名(type alias)和接口(interfaces)。雖然它們都可以用來定義類型,但它們之間有著非常重要的區別。
TypeScript 類型別名(type alias)
TypeScript 類型別名(type alias)可以用來定義一個新的類型,它可以是一個基本類型,也可以是一個複合類型,例如:
type StringOrNumber = string | number;
上面的代碼定義了一個新的類型 StringOrNumber,它可以是一個字符串或者一個數字。
TypeScript 接口(interfaces)
TypeScript 接口(interfaces)可以用來定義一個物件的結構,它可以定義一個物件的屬性和方法,例如:
interface Person {
name: string;
age: number;
greet(): void;
}
上面的代碼定義了一個 Person 接口,它有一個 name 屬性,一個 age 屬性,以及一個 greet 方法。
TypeScript 類型別名(type alias)與接口(interfaces)的區別
TypeScript 類型別名(type alias)和接口(interfaces)都可以用來定義類型,但它們之間有著非常重要的區別:
- 類型別名(type alias)可以用來定義一個新的類型,它可以是一個基本類型,也可以是一個複合類型。
- 接口(interfaces)可以用來定義一個物件的結構,它可以定義一個物件的屬性和方法。
因此,在使用 TypeScript 時,我們應該根據不同的需求來選擇適當的定義類型的方式,以確保程式的品質和可維護性。
推薦閱讀文章
推薦閱讀文章
<a href="https://ithelp.ithome.com.tw/articles/10206890">TypeScript 類型別名(type alias)與接口(interfaces)的區別</a><br>
<a href="https://medium.com/@peterchang_82818/typescript-type-alias-vs-interface-d6d7f3f9f8d3">TypeScript Type Alias vs Interface</a><br>
<a href="https://www.typescriptlang.org/docs/handbook/advanced-types.html">TypeScript Handbook: Advanced Types</a><br>
<a href="https://www.freecodecamp.org/news/typescript-type-alias-vs-interface/">TypeScript Type Alias vs Interface</a><br>
<a href="https://www.tutorialsteacher.com/typescript/typescript-type-alias">TypeScript Type Alias</a