TypeScript徹底解讀(26課時)_10.TypeScript徹底解讀-枚舉

10.TypeScript徹底解讀-枚舉

 

 

新建enum.ts並在jindex.ts中引用函數

一個簡單的數字枚舉編碼

能夠經過兩種方式獲取枚舉的值3d

獲取到編碼,第一個默認爲0,後面的一次遞增對象

第二種形式blog

能夠本身制定編碼,那麼後面的一次遞增接口

 

所有一次遞增的結果ip

制定中間的爲2 那麼第一個仍是0 ,2後面的會遞增字符串

也能夠單獨指定,能夠隨便指定,不必定按照從小到大的順序編譯

能夠定義一個常量,把常量賦值給枚舉bfc

也能夠定義函數

某個字段使用的計算值,或者是常量。它後面的枚舉必需要設置初始值

它後面的枚舉必需要設置上值

反向映射

一個枚舉不只能夠經過他的字段名獲取枚舉的值,還能夠經過值獲得它的字段名

ts的代碼編譯成通常的js代碼

 

打印定義的枚舉值對象

字符串枚舉

定義字符串枚舉的時候,既可使用字符串常量,也可使用枚舉裏面的字段

異構枚舉

既包含數字又包含字符串的枚舉。不建議使用異構枚舉。根據本身的需求,儘量少的使用異構枚舉

枚舉成員類型和聯合枚舉類型

知足這三個條件枚舉這就能夠作爲類型來使用

第一種,枚舉成員類型。Anmimals.Dog就是做爲類型來使用

 

聲明一個dog類,這裏的Anmimals.Dog的值就是1 因此這裏咱們直接寫1也是能夠的

這裏寫成Anmimals.Cat就會報錯,由於在聲明dog的時候,指定了類型是接口Dog裏面的type是Animals.Dog類型的也就是隻爲1

聯合枚舉類型

若是咱們用剛纔的Animals.Dog也是會報錯的,這個就是聯合枚舉類型

運行時的枚舉

一個枚舉值編譯完成後就是一個真實的對象,因此咱們能夠在代碼的運行時中使用這個枚舉值的,就能夠把它當作一個比較豐富的對象

 

const Enum

枚舉前面加上const之後,它就不會把咱們的枚舉值編譯成一個js中真實存在的對象

咱們在使用枚舉值只是提升咱們代碼的可讀性

const去掉之後,枚舉值編譯爲真實的js就會變成一個對象。dog的取值就是從按個對象上取的值

 

相關文章
相關標籤/搜索