最新文章
初識TypeScript(六)
在過去幾年中,TypeScript 的熱門程度、社區(qū)規(guī)模和使用率都在不斷提升。如今,甚至 Facebook 正將 Jest 項目轉(zhuǎn)移至 TypeScript。接下來就由石家莊網(wǎng)站建設(shè)工程師簡單的講解一下TypeScript.js。
類型保護(hù)
類型保護(hù)可以在條件塊中縮小對象類型的范圍。
typeof
在條件里使用 typeof,編譯器會知道變量的類型會不一致。在下面的示例中,TypeScript 會知道:在條件塊之外,x 可能是布爾值,而布爾值上無法調(diào)用函數(shù) toFixed。
Instanceof
in
in 運算符會檢查一個屬性在某對象上是否存在。
Literal Types (字面量類型)
字面量正是 JavaScript 原始數(shù)據(jù)類型具體的值,它們可以與 union (聯(lián)合) 類型搭配使用,構(gòu)造一些實用的概念。
條件類型
條件類型表示類型關(guān)系的測試,并根據(jù)測試的結(jié)果選擇兩種可能類型中的一種。
如果 A 類型可以賦值給 B 類型,那么 X 是 C 類型;否則 X 是 D 類型。
泛型
泛型是必須包含或引用其他類型才能完成的類型。它加強(qiáng)了變量之間有意義的約束。
下面例子中的函數(shù)會返回所傳入的任何類型的數(shù)組。
keyof
keyof 運算符會查詢給定類型的鍵集。
映射類型
映射類型,通過在屬性類型上建立映射,從現(xiàn)有的類型創(chuàng)建新類型。具有已知類型的每個屬性都會根據(jù)你指定的規(guī)則進(jìn)行轉(zhuǎn)換。
Partial
- 泛型 Partial 類型被定義時只有一個類型參數(shù) T。
- keyof T 表示所有 T 類型屬性的名字(字符串字面類型)的聯(lián)合。
- [P in keyof T]?: T[P] 表示所有 T 類型的屬性 P 的類型都應(yīng)該是可選的,并且都會被轉(zhuǎn)換為 T[P]。
- T[P] 表示 T 類型的屬性 P 的類型。
以上關(guān)于TypeScript 中類型的介紹屬石家莊網(wǎng)站建設(shè)工程師的個人觀點,大家如果對此有著不同的見解,可以關(guān)注公眾號“尚武科技派”給我留言,大家可以交流一下自己的心得體會,共同學(xué)習(xí)進(jìn)步。