Record<K,T>是什麼

Record<K,T>是什麼

在TypeScript中,Record<K, T> 是一個工具型別(Utility Type),它用來構建一個對象型別,這個對象型別的所有鍵(keys)都是 K 類型,對應的值(values)都是 T 類型。換句話說,Record<K, T> 創建了一個映射從 KT 的對象型別。
舉一個例子:
在這個例子中,speeds 是一個對象,它的鍵是 Vehicle 型別(即 'car', 'bike', 'bus'),而對應的值是 Speed 型別(即數字型別 number)。
在您提供的代碼中:
這行代碼定義了一個名為 store 的屬性,它是一個對象。該對象的鍵是 string 類型,對應的值也是 string 類型。這實際上等效於使用 { [key: string]: string } 來定義對象型別。
這樣定義的好處是提供了一個清晰、簡潔的方式來描述對象的鍵值型別,而不需要寫出更冗長的型別註解。這使得代碼更易於閱讀和維護。