詳解TypeScript的基礎類型

佈爾類型

// 佈爾類型--->boolean
// let 變量名:數據類型 = 值
let flag: boolean = true;
console.log(flag)

數字類型

// 數字類型--->number
let a1: number = 10 // 十進制
let a2: number = 0b1010 // 二進制
let a3: number = 0o12// 八進制
let a4: number = 0xa // 十六進制
console.log(a1 + a2 + a3 + a4)

字符串類型

// 字符串類型--->string
let str1: string = '床前明月光';
let str2: string = '地上鞋兩雙';
console.log(str1 + ',' + str2)

字符串和數字進行拼接

let str3: string = '我現在的歲數:'
let a5: number = 24
console.log(`${str3}${a5}`)

總結:ts中變量一開始是什麼類型,那麼後期賦值的時候,隻能用這個類型的數據,是不允許用其他類型的數據賦值給當前的這個變量中

undefined和 null

// undefined和 null都可以作為其他類型的子類璧,把undefined和nu1l賦值給其他類型的變量的,如: number類型的變量
let und: undefined = undefined
let n1l: null = null
console.log(und)
console.log(n1l)

數組類型

// 方式一:let變量名:數據類型[]=[值1,值2,值3,...]
let arr1: number[] = [10, 20, 30, 40, 50]
console.log(arr1);
// 方式二:泛型的寫法
// 語法: let變量名: Array<數據類型>=[值1,值2,值3]
let arr2: Array<number> = [100, 200, 300]
console.log(arr2);

註意問題:數組定義後,裡面的數據的類型必須和定義數組的時候的類型是一致的,否則有錯誤提示信息,也不會編譯通過的

元組類型

// 元組類型:在定義數組的時候,類型和數據的個數一開始就已經限定瞭
let arr3: [string, number, boolean] = ['小甜甜', 100, true];
console.log(arr3)
// 註意問題:元組類型在使用的時候,數據的類型的位置和數據的個數應該和在定義元組的時候的數據類型及位置應該是一致的
console.log(arr3[0].split(''));
console.log(arr3[1].toFixed(2));

枚舉類型

enum Color {
       red,
       green,
       blue
}
// 定義一個Color的枚舉類型的變量來接收枚舉的值
let color: Color = Color.red
console.log(color);
console.log(Color[2])

any類型

let str5: any = 100;
str5 = '宇智波帶土'
console.log(str5);
// 當一個數組中要存儲多個數據,個數不確定,類型不確定,此時也可以使用any類型來定義數組
let arr6: any = [100, '宇智波帶土', true];
console.log(arr6)
// 這種情況下也沒有錯誤的提示信息, any類型有優點,也有缺點
console.log(arr6[1].split(''));

void類型

function getobj(obj: object): object {
       console.log(obj);
       return {
           name: '卡卡西',
           age: 27
       }
}
console.log(getobj({ name: '佐助', age: 20 }))

聯合類型

 // 需求1:定義一個函數得到一個數字或字符串值的字符串形式值
function getString(str: number | string): string {
      return str.toString();
}
console.log(getString('薩斯給'))
 
// 需求2:定義一個一個函數得到一個數字或字符串值的長度
function getString1(str: number | string): number {
      return str.toString().length
      if ((<string>str).length) {
          return (str as string).length
      } else {
          return str.toString().length
      }
}
  console.log(getString1(12345))
  console.log(getString1('12345'))

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容! 

推薦閱讀: