1. 編譯TS文件
tsc + 文件名? ,如?

實例
tsc + 文件名? -w? ?可以實時編譯
2. 類型聲明

類型聲明
3. TS的類型
新增了部分基本類型

1)字面量

字面量
2)any
表示任意類型,可以任意賦值。一個變量設置類型為any后相當于對該變量關閉了TS類型檢測。

隱式 any
any類型的可以賦值給任意變量
3)unknow
表示未知類型,是一個類型安全的any
unknow類型的不可以直接賦值給其他變量

unknow賦值
4)void , never
void 表示空,以函數(shù)為例,就表示沒有返回值,允許 return null 或者 return。
never 表示永遠不會返回結果
5) object
{ } 用來指定對象中可以包含哪些屬性

任意屬性
6)array
類型聲明:1. 類型[ ]? ?2. Array<類型>?

類型聲明
7)tuple?
元組,就是固定長度及類型的數(shù)組

對應長度
8)enum
定義枚舉類型需要使用enmu關鍵字,自定義一個類型,枚舉是通過數(shù)字類型實現(xiàn)的,typeof 驗證顯示Number

枚舉

使用枚舉對參數(shù)進行限制
數(shù)字枚舉:枚舉類型中的每一個常量都是數(shù)字,在 TS 中, 枚舉內的每一個常量, 當你不設置值的時候, 默認就是 number 類型。
第一個默認值是 0, 后面的依次 +1 遞增。也可以指定值,指定常量后面的未指定常量, 就會按照 +1 的規(guī)則一次遞增。

數(shù)字枚舉
枚舉合并:兩個枚舉都叫同一個名字, 會在編譯的時候自動放在一起, 不會出現(xiàn)沖突

枚舉合并
反向映射:TS 內的數(shù)字枚舉, 在編譯的時候, 會同時將 key 和 value 分別顛倒編譯一次

反向映射
4. 類型約束

類型約束
1)基本類型及基本類型聯(lián)合

基本類型

基本類型聯(lián)合
2) 對象類型及對象類型聯(lián)合

對象類型
對象聯(lián)合類型, 和 interface 的 extends 繼承很像

對象類型聯(lián)合