在Typescript中,條件類型是一種類型操作符,用于根據(jù)一個或多個類型關系判斷返回不同的類型。條件類型通常使用extends
關鍵字來定義,并且通常與infer
關鍵字一起使用,以從條件類型中提取類型信息。
例如,下面是一個簡單的示例,展示了如何使用條件類型來定義一個根據(jù)輸入類型是否為數(shù)組返回不同類型的函數(shù):
type IsArray<T> = T extends any[] ? true : false;
function isArray<T>(value: T): IsArray<T> {
return Array.isArray(value) as IsArray<T>;
}
console.log(isArray([])); // true
console.log(isArray(123)); // false
在這個例子中,IsArray<T>
是一個條件類型,根據(jù)T
是否為數(shù)組來返回不同的類型。isArray
函數(shù)使用了這個條件類型來判斷輸入值的類型,并返回相應的布爾值。