zoukankan      html  css  js  c++  java
  • 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}
  • 相关阅读:
    滑动窗口法与剑指offer:和为S的连续正数数列 与 和为S的两个数字
    数组中的逆序对与归并中的分治思想
    重读STL源码剖析:迭代器
    重读深度探索C++对象模型:函数
    FreeMarker笔记 前言&第1章 入门
    分享我的PL/SQL的优化设置,为开发全面提速
    迅影QQ视频查看v2.0 源码
    Invalid encoding name "UTF8". 报错 XML
    [HNOI2003]消防局的设立
    We need water!
  • 原文地址:https://www.cnblogs.com/BlueCc/p/14426669.html
Copyright © 2011-2022 走看看