TypeScript基本类型的了解
生活随笔
收集整理的這篇文章主要介紹了
TypeScript基本类型的了解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
數據類型:
number,string,boolean跟js類同
字面量
它就是值本身及值本身的類型
let a: 10 a = 10; a = 125; a = "123";any表示任何類型,可以任意賦值
一個變量賦值為any后相當于對該變量關閉了ts的類型檢測
在使用ts時候不到萬不得已則不建議使用any
unknown表示未知的類型
let e:unknown let s : string // e = 10 // e = "10" // e = true // e = d // s = e // unknown實際上就是一個類型安全的any // unknown類型的變量不能直接賦值給其他的變量 // 1. 可以通過對e變量類型的判斷進行賦值 e = 'hello'; if(typeof e === "string"){s = e }2. 或者使用類型斷言 // 告訴編譯器e就是字符類型可以被s使用 s = e as string // 當遇到一個類型不確定的變量時能不用any就不用any,推薦使用unkonwn當把一個any類型的變量賦值給unknown之后也會變成any任意類型
但是unknown類型的變量直接賦值給別的變量則報錯不會影響到其他的變量
void代表函數沒有返回值
function fn1():void{//return null|undefined//不報錯// return 1323等類型則報錯 }never永遠不會有返回值,沒有任何返回值
使用場景:用于異常拋出,返回報錯
// function err():never{ // throw new Error("報錯了!"); // } // void和never的區別是: // void有null或者undefined作為返回值 // never是沒有任何返回值object表示一個js對象
一般不常用,因為js中一切皆為對象所以,object這個類型太廣泛不好限制
let a :object a = {} a = function (){}{}用來指定對象中可以包含哪些屬性
// age?:number屬性名后加問號表示屬性是可選的,有也可以沒有也可以 let b: {name:string,age?:number} b = {name:"孫悟空",age:22}[propName:string]: any表示任意類型的屬性
// [propName:string]: string表示任意類型的字符串屬性 let c: {name:string,[propName:string]: string} c = {name:"豬八戒",sex:"555",job:"4656"}Array
array的類型聲明方式:類型:[],Array<類型>
// string[]表示字符串數組 let d: string[] d =["1323","住宿等我","dwad"] // number[]表示數字數組 let f: number[] f = [1,2,3,6,54] // 可以指定未知的類型或者多個類型Array<unknown>/any let g: Array<unknown> g = ["wewe",122,true]Tuple元組就是固定長度的數組
// 語法:[類型,類型,類型] let h: [string,string] h = ["www",'www']enum枚舉
enum Gender{boy=1,girl=0 } let i:{name:string,gender:Gender} i = {name:"小明",gender:Gender.boy } console.log(i.gender===Gender.boy)// 類型的別名 type myType = 1|2|3|4|5 let k: myType let l: myType let m: myType k = 5//有則不報錯 // k = 6類型中無6則報錯| &運算符
|可以用來連接多個類型{聯合類型}
let b:number|boolean b = 2 b = true&表示并且的意思
表示名字必須是字符串年齡必須是數字類型
// let a: {name: string},{age:number}總結
以上是生活随笔為你收集整理的TypeScript基本类型的了解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么 React 还是比 Vue 受欢
- 下一篇: React 和 Vue 到底谁更牛?听听