在TypeScript中,有多種方法可以聲明高級類型。以下是其中一些常見的方法:
使用交叉類型(Intersection Types):使用&
符號將多個類型組合在一起。例如:type Person = { name: string } & { age: number }
。
使用聯合類型(Union Types):使用|
符號將多個類型進行聯合。例如:type Result = Success | Failure
。
使用類型別名(Type Aliases):使用type
關鍵字為一個類型定義一個別名。例如:type Age = number
。
使用泛型(Generics):使用尖括號<T>
來定義一個通用的類型,可以在需要的地方傳入具體的類型。例如:function identity<T>(arg: T): T { return arg; }
。
使用條件類型(Conditional Types):根據條件來確定類型。例如:type ReturnType<T> = T extends (...args: any[]) => infer R ? R : any
。
使用映射類型(Mapped Types):根據已知類型生成新的類型。例如:type Readonly<T> = { readonly [P in keyof T]: T[P] }
。
這些方法可以單獨使用,也可以組合使用,以便根據需要聲明復雜的高級類型。