跳至內容

typescript泛型是什麼

更新時間
快连VPN:速度和安全性最佳的VPN服务
快连VPN:速度和安全性最佳的VPN服务
typescript 泛型是一種類型參數化機制,可創建可重用的組件,處理不同類型的輸入和輸出。用途包括:代碼重用:創建可處理不同類型數據的通用函數或類。類型安全:強制執行類型檢查,防止運行時錯誤。類型推斷:簡化代碼編寫,通過推斷泛型類型。

TypeScript 泛型

TypeScript 泛型是一種類型參數化機制,它允許在函數、類或接口中定義可重用的組件,這些組件可以處理不同類型的輸入和輸出。

用途

  • 代碼重用:泛型允許創建可用於處理不同類型數據的單一函數或類。
  • 類型安全:泛型強制執行類型檢查,幫助防止運行時錯誤。
  • 類型推斷:TypeScript 可以推斷泛型類型,這簡化了代碼編寫。

語法

泛型使用尖括號 聲明,其中包含一個類型參數。例如:

function printArray<T>(arr: T[]): void {  // ...}
登錄後複製

這裏, 是一個泛型類型參數,可以是任何類型。

類型約束

有時,需要對泛型類型進行約束。這可以通過使用 extends 關鍵字來實現,它指定了泛型類型必須滿足的約束。例如:

function compareNumbers<T extends number | string>(a: T, b: T): number {  // ...}
登錄後複製

這裏, 指定了 T 必須是 number 或 string 類型,或者它們的子類型。

例程

以下是 TypeScript 泛型的示例:

// 打印任意類型數組function printArray<T>(arr: T[]): void {  for (let item of arr) {    console.log(item);  }}// 計算兩個數字的平均值function getAverage<T extends number | string>(a: T, b: T): number {  return (Number(a) + Number(b)) / 2;}// 使用泛型類創建一個可存儲任意類型數據的堆棧class Stack<T> {  private data: T[] = [];  push(item: T): void {    this.data.push(item);  }  pop(): T | undefined {    return this.data.pop();  }}
登錄後複製

以上就是typescript泛型是什麼的詳細內容,更多請關注本站其它相關文章!

更新時間

發表留言

請注意,留言須先通過審核才能發佈。