枚舉Enum是在多種語言中都有的一種數據類型,用於表示一組特定相關的常量數據集合,如性別(男、女)、數據狀態(可用、禁用)、垂直對齊(頂端、居中、底部)、星期等。特點是數據值固定,不會變,存儲和顯示的內容不同。然而在JavaScript中並沒有枚舉Enum類型,TypeScript算是有(本文中暫沒... ...
01、什麼是枚舉Enum?
枚舉Enum
是在多種語言中都有的一種數據類型,用於表示一組特定相關的常量數據集合,如性別(男、女)、數據狀態(可用、禁用)、垂直對齊(頂端、居中、底部)、星期等。特點是數據值固定,不會變,存儲和顯示的內容不同。
然而在JavaScript中並沒有枚舉Enum
類型,TypeScript算是有(本文中暫沒用用TS的枚舉)。在前端項目中還是會用到經常用到這類型數據的,本文就對枚舉做一個通用封裝,併進行儘量全局的總結。
先來看看最常用的性別:
Text文字(界面顯示) | 編碼(編碼、傳輸、存儲使用) | 數字值(存儲使用) |
---|---|---|
男 | male/man/M | 1 |
女 | female/woman/F | 2 |
其他 | other | 3 |
❓你的系統中性別用的什麼存儲的呢?
- 在UI上顯示為
Text
文字描述,如表格、單選項。 - 傳輸或存儲時,一般會用一個有意義的字元編碼,或者數字,兩種方式都有也都可以。
- 如果數據量少,可以用字元編碼,如M(男)、Male(男),可讀性更好,就是占用空間比數字類型多。
- 推薦採用短整形數字表示,存儲空間更小,採用一個位元組的最小整形即可(值為0到255)。
針對性別的枚舉值,其實是有國家標準的,國標中就是用的整數值標識。