基本類型:string扼褪,number玄坦,boolean
數(shù)組類型:type[]敬尺,Array<type>(泛型寫法)
any:不希望某個(gè)特定的值導(dǎo)致類型檢查錯(cuò)誤肢执。盡量避免使用any练慕。
對象類型:例如{x:number,y?:number}中間可以用逗號或者分號分割惰匙。問號表示可選技掏。
聯(lián)合類型:兩個(gè)或多個(gè)類型組成的新類型。例如:number | undefined
類型別名:使用type來定義一個(gè)類型项鬼,例如:type Person = string
接口:一種結(jié)構(gòu)類型零截,定義對象類型的另外一種方式。關(guān)于interface和type的區(qū)別秃臣,參考另外一篇文章涧衙。
關(guān)于any和unknown的區(qū)別:寫any相當(dāng)于沒有類型檢查,和寫js一個(gè)樣奥此。unknown:也可把任何值賦給unknown,但是不能調(diào)用屬性和方法弧哎。除非使用類型斷言或者類型保護(hù)(typeof 判斷)。
類型斷言:有兩種寫法:① person as string ;②<string>person
undefined和null:前者沒有賦值稚虎,后者表示不存在撤嫩。
非空類型斷言操作符:!表示類型推斷排除null和undefined,表示確定某個(gè)操作符是有值的蠢终,跳過ts在編譯階段對它的檢測序攘。
文字類型:相當(dāng)于縮小類型范圍。例如:'left' | 'right' | 'center'
function handleRequest(host:string,method:'GET'|'POST'){
}
const req={
host:'xxxx',
method:'GET'
} as const;
handleRequest(req.host,req.method);
//這里有三種寫法:
1:method:'GET' as 'GET'
2:req.method as 'GET'
3:第三種如上圖 使用 as const
最后編輯于 :2023.02.23 22:37:54
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者