TypeScript-枚举成员类型和联合类型

简介: TypeScript-枚举成员类型和联合类型

TypeScript-枚举成员类型和联合类型


枚举成员类型


可以把 枚举成员 当做 类型 来使用

正确示例:

enum Gender {
    Male,
    Female
}
interface TestInterface {
    age: Gender.Male
}
class Person implements TestInterface {
    age: Gender.Male
}

错误示例:

enum Gender {
    Male,
    Female
}
interface TestInterface {
    age: Gender.Male
}
class Person implements TestInterface {
    age: Gender.Female
}

如上代码由于类型不匹配, 所以会报错




注意点

由于数字枚举的本质就是数值, 所以写一个数值也不会报错如下:

enum Gender {
    Male,
    Female
}
interface TestInterface {
    age: Gender.Male
}
class Person implements TestInterface {
    age: 0
}

如果是字符串枚举, 那么只能是枚举成员的值, 不能是其它的值

正确示例:

enum Gender {
    Male = 'yangbuyiya',
    Female = 'Jonathon_Lee'
}
interface TestInterface {
    age: Gender.Male
}
class Person implements TestInterface {
    age: Gender.Male
}


错误示例:

enum Gender {
    Male = 'yangbuyiya',
    Female = 'Jonathon_Lee'
}
interface TestInterface {
    age: Gender.Male
}
class Person implements TestInterface {
    age: Gender.Female
}




联合枚举类型


联合类型

联合类型就是将多种数据类型通过 | 连接起来

let value: (number | string);
value = 1;
value = 6;
value = "123";
console.log(value);


我们可以把枚举类型当做一个 联合类型 来使用

enum Gender {
    Male,
    Female
}
interface TestInterface {
    age: Gender
}
class Person implements TestInterface {
    age: Gender.Male
}

最后

本期结束咱们下次再见👋~

🌊 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。大家点赞支持一下哟~ 💗

相关文章
|
23天前
|
JavaScript 前端开发 Java
TypeScript 类型兼容性
TypeScript 类型兼容性
|
7天前
|
JavaScript 前端开发 IDE
TypeScript中的声明文件(.d.ts):扩展类型系统
TypeScript的`.d.ts`声明文件为JS库提供类型信息,增强IDE支持,如自动完成和类型检查。通过声明合并,可在全局作用域定义类型。示例包括为`my-library`创建声明模块,导出函数和接口。声明文件通常存于`@types`或指定`typeRoots`。用于旧JS代码的类型注解,如`myGlobalObject`。学习更多,参阅TypeScript官方文档。分享你的TS声明文件经验!
|
19天前
|
JavaScript 前端开发 安全
TypeScript:静态类型的动态语言
【6月更文挑战第9天】TypeScript是JavaScript的静态类型超集,解决JS类型安全问题,提供更强的代码组织和维护。它引入静态类型、接口和类,增强类型安全,减少运行时错误。TS与JS无缝集成,兼容现有库和框架,拥有丰富的开发工具和活跃社区。广泛应用在各种规模项目中,尤其提升复杂前端应用的代码质量。学习TypeScript对提升开发效率和代码可靠性极具价值。
26 10
|
17天前
|
前端开发 JavaScript 安全
TypeScript作为一种静态类型的JavaScript超集,其强大的类型系统和面向对象编程特性为微前端架构的实现提供了有力的支持
【6月更文挑战第11天】微前端架构借助TypeScript提升开发效率和代码可靠性。 TypeScript提供类型安全,防止微前端间通信出错;智能提示和自动补全加速跨代码库开发;重构支持简化代码更新。通过定义公共接口确保一致性,用TypeScript编写微前端以保证质量。集成到构建流程确保顺利构建打包。在微前端场景中,TypeScript是强有力的语言选择。
30 2
|
23天前
|
JavaScript
TypeScript 泛型类型
TypeScript 泛型类型
|
3天前
|
JavaScript 安全
TypeScript类型(数字、字符串、字面量、数组、元组、枚举、对象等)
TypeScript类型(数字、字符串、字面量、数组、元组、枚举、对象等)
5 0
|
3天前
|
JavaScript
TypeScript类型申明
TypeScript类型申明
6 0
|
23天前
|
JavaScript 算法
TypeScript 类型推论
TypeScript 类型推论
|
23天前
|
JavaScript 前端开发 测试技术
TypeScript 枚举
TypeScript 枚举
|
23天前
|
JavaScript 前端开发
typescript 混合类型
typescript 混合类型