Typescript:枚举

枚举:是组织有关数据的一种方式。

使用场景:当变量的值,只能是几个固定值中的一个,就应该使用枚举来实现。

语法:enum 枚举名称 { 成员1, 成员2, ... }
枚举名称、成员名称以大写字母开头

比如,现在我们要表示性别,如果我们预定性别只可能是“男、女、不详“,那么,如果给性别变量赋值为“人妖“,那么系统不会报错,但是显然不是我们需要的值,这个时候就可以用枚举来规避赋值错误的问题。

 

case1: 枚举成员没有初始值

 性别只有女和男,用Female来表示女,用Male来表示男

 

//创建枚举
enum Gender { Female, Male }

//创建变量,使用枚举作为变量类型
let xiaofangGender:Gender = Gender.Female
let xiaomingGender:Gender = Gender.Male

 

//xiaofangGender的值是啥?
console.log(xiaofangGender)
// ===> 0

console.log(xiaomingGender)
// ===> 1
以枚举作为类型的变量的值 默认是数字枚举(枚举成员的值为数字类型),枚举成员所在枚举中的索引,从0开始自增

枚举成员是只读的,枚举中的成员无法直接赋值   
错误赋值示范:
Gender.Female = '女'
Gender.Male = '男'

 

case2: 给枚举成员设置初始值,类型为数字类型

enum Gender { Female = 1, Male = 3 ,Notlearn}
let xiaohongGender:Gender = Gender.Notlearn
console.log(xiaohongGender)
//=====>4

 

case3: 字符串枚举:枚举成员的值为字符串类型

字符串枚举的每个枚举成员必须给定默认值
enum Gender { Female = '女', Male = '男' ,Notlearn = '不了解'}

错误示范

enum Gender { Female = '女', Male = '男' ,Notlearn}

 

 

 

posted @ 2021-02-21 18:06  心中有一海  阅读(128)  评论(0编辑  收藏  举报