菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

TypeScript 枚举


Enum(枚举)是一种特殊的“类”,用于表示一组常量(不可变变量)。

枚举有两种形式:string(字符串)和 numeric(数字)。我们先从数字枚举开始。


数字枚举 - 默认

默认情况下,枚举会将第一个值初始化为 0,后续值依次递增。

示例

enum CardinalDirections {
  North,
  East,
  South,
  West
}
let currentDirection = CardinalDirections.North;
// 输出 0
console.log(currentDirection);
// 抛出错误,因为 'North' 不是有效的枚举
currentDirection = 'North'; // 错误: "'North' 不能赋值给类型 'CardinalDirections'。"
自己动手试一试 »

数字枚举 - 初始化

您可以设置第一个数字枚举的值,然后它将从该值开始自动递增。

示例

enum CardinalDirections {
  North = 1,
  East,
  South,
  West
}
// 输出 1
console.log(CardinalDirections.North);
// 输出 4
console.log(CardinalDirections.West);
自己动手试一试 »

数字枚举 - 完全初始化

您可以为每个枚举值分配唯一的数字。这样,值就不会自动递增。

示例

enum StatusCodes {
  NotFound = 404,
  Success = 200,
  Accepted = 202,
  BadRequest = 400
}
// 输出 404
console.log(StatusCodes.NotFound);
// 输出 200
console.log(StatusCodes.Success);
自己动手试一试 »

w3schools CERTIFIED . 2022

获得认证!

完成 TypeScript 模块,做练习,参加考试,成为 W3Schools 认证!!

$45 报名

字符串枚举

枚举也可以包含字符串。这比数字枚举更常见,因为它们具有更好的可读性和意图。

示例

enum CardinalDirections {
  North = 'North',
  East = "East",
  South = "South",
  West = "West"
};
// 输出 "North"
console.log(CardinalDirections.North);
// 输出 "West"
console.log(CardinalDirections.West);
自己动手试一试 »

严格来说,您可以混合使用字符串和数字枚举值,但建议不要这样做。


TypeScript 练习

通过练习来测试自己

练习

创建一个名为 myEnum 的枚举,包含 2 个常量(myFirstConst, mySecondConst),使用默认值。

enum  {
  ,
  
};
        

开始练习


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持