TypeScript基础笔记——枚举类型(TS -- 10)

简介: 枚举类型(TS -- 10)


在 javaScript 中是没有
枚举的概念的 TS 帮我们定义了枚举这个类型

enum 关键字定义枚举

数字定义枚举

默认从0开始的

enumColor{

   red,

   green,

   blue

}

console.log(Color.red,Color.blue,Color.green)//能够得到他们的顺序数字,这里返回0,2,1

增长枚举

能够通过自定义开头决定从哪个数字开始枚举,其他位置的都可以定义,后面的数字就按顺序枚举

enumColor{

   red=2,

   green,

   blue

}

console.log(Color.red,Color.blue,Color.green)//能够得到他们的顺序数字,这里返回2,4,3

字符串枚举

字符串枚举的概念很简单。 在一个字符串枚举里,每个成员都必须用字符串字面量,或另外一个字符串枚举成员进行初始化。

由于字符串枚举没有自增长的行为,字符串枚举可以很好的序列化。 换句话说,如果你正在调试并且必须要读一个数字枚举的运行时的值,这个值通常是很难读的 - 它并不能表达有用的信息,字符串枚举允许你提供一个运行时有意义的并且可读的值,独立于枚举成员的名字。

enumTypes{

  Red='red',

  Green='green',

  BLue='blue'

}

异构枚举

枚举可以混合字符串和数字成员

enumTypes{

  No="No",

  Yes=1,

}

console.log(Types.NO,Types.Yes)

接口枚举

定义一个枚举 Types 定义一个接口 A 他有一个属性 red 值为 Types.yyds

声明对象的时候要遵循这个规则

enumColor{

    no="NO",

    yes=1

}

interfaceA{

   red:Color.yes

}

letB:A{

   red:Color.yes

   //或者直接red:1,只能填入这两个内容其中之一,其他的会报错

}

const枚举

let 和 var 都是不允许的声明只能使用 const

大多数情况下,枚举是十分有效的方案。 然而在某些情况下需求很严格。 为了避免在额外生成的代码上的开销和额外的非直接的对枚举成员的访问,我们可以使用 const 枚举。 常量枚举通过在枚举上使用 const 修饰符来定义

const 声明的枚举会被编译成常量

普通声明的枚举编译完后是个对象

constenumTypes{//有没有const决定是编译成对象还是编译成常量

   sucess,

   fail

}

letcode:number=0

if(code===sucess){//是能执行的

   console.log("我在人民广场吃炸鸡")

}

反向映射

它包含了正向映射( name -> value)和反向映射( value -> name

要注意的是 不会为字符串枚举成员生成反向映射。

enumTypes{

   one

}

letsuccess:number=Types.success

console.log(success)//读取得出来为0

enumTypes{

   success

}

letsuccess:number=Types.success

letkey=Types[success]

console.log(`value---${success}`,`key----${key}`)//value---0,key----success

目录
相关文章
|
6月前
|
JavaScript 前端开发 测试技术
[小笔记]TypeScript/JavaScript模拟Python中的Range函数
[小笔记]TypeScript/JavaScript模拟Python中的Range函数
67 0
|
2月前
|
JavaScript
typeScript基础(3)_ts函数默认值和可选参数
本文介绍了在TypeScript中如何使用函数的默认值和可选参数。展示了如何为函数参数指定默认值,使得在调用函数时可以省略某些参数,以及如何定义可选参数。
154 2
|
3月前
|
JavaScript 前端开发 安全
TypeScript中的枚举类型有哪些优点和缺点
【8月更文挑战第4天】 TypeScript中的枚举类型有哪些优点和缺点
54 3
|
1月前
|
JavaScript 索引
TypeScript(TS)安装指南与基础教程学习全攻略(二)
TypeScript(TS)安装指南与基础教程学习全攻略(二)
52 0
|
1月前
|
JavaScript 前端开发 安全
TypeScript(TS)安装指南与基础教程学习全攻略(一)
TypeScript(TS)安装指南与基础教程学习全攻略(一)
28 0
|
2月前
|
JavaScript 前端开发
typeScript基础(8)_ts类型断言
本文介绍了TypeScript中的类型断言,它用于在编译时告诉TypeScript某个对象具有特定的类型,即使它看起来不具备。类型断言可以用来访问一个类型上存在而另一个类型上不存在的属性或方法。需要注意的是,类型断言并不会在运行时改变JavaScript的行为,因此如果断言不当,运行时仍然可能出错。文章还提醒避免将类型断言为`any`类型或进行多重断言。
34 1
|
2月前
|
JavaScript
typeScript进阶(12)_枚举类型
TypeScript中的枚举类型(Enum)允许值限定在一定范围内,枚举成员默认从0开始递增,也支持手动赋值及反向映射。枚举可以用于定义常量,提高代码可读性和维护性。枚举项可以是整数、浮点数或字符串,未手动赋值的项将按顺序递增。
31 0
|
3月前
|
JavaScript 安全 前端开发
TypeScript中的枚举类型有哪些应用场景
【8月更文挑战第4天】TypeScript中的枚举类型有哪些应用场景
67 5
|
3月前
|
存储 JavaScript 前端开发
深入浅出TypeScript | 青训营笔记
深入浅出TypeScript | 青训营笔记
32 0
|
5月前
|
JavaScript 前端开发 程序员
typescript入门笔记分享
typescript入门笔记分享
30 0