【TS】枚举数据类型详解

定义

使用关键字enum定义

enum  demo{
  a,
  b="c",
  $c=3,
  "_1"
};

详解

1.定义枚举的时候,没有赋值,默认从0开始

enum  demo{
  a,
  b,
  c
};
console.log(demo.a);//return 0
console.log(demo[1]);//return b

2.定义枚举的时候,给赋值数字,默认从赋值的数字开始

enum  demo{
  a,
  b=3,
  c
};
console.log(demo.a);//return 0
console.log(demo[4]);//return c

3.赋值重复的时候,调用会返回最后一个

enum demo{
  a,
  b=0,
  c=0
}
console.log(demo[0]);//return c

4. 当等号左侧和右侧重复的时候,左侧优先

enum demo{
  a='b',
  b='a',
  c='a',
}
console.log(demo['a']);//return 'b'
console.log(demo.a);//return 'b'

5. 当右侧有字符串时,数字无法获取数据,即使字符串是数字

enum demo{
    a='b',
    b='1',
    c='a',
  }
console.log(demo[1]);//return undefined
console.log(demo['1']);//reutnr undefined

6.当枚举值不是数字的时候,下一个必须设置枚举值

enum demo{
    a,//a=0
    b=3,//b=3
    c,//c=4
    e="q1",//e="q1"
    f=5,//f=5,此处不能直接写f
}
posted @ 2021-08-30 00:06  wl夏白  阅读(1213)  评论(0)    收藏  举报