ts 枚举类型

发布时间 2023-05-04 22:13:49作者: .net&new
  1. 默认枚举
    默认的情况下,默认的情况下第一项索引是 '1',逐渐递增,可正反映射
    enum baseType {
        string,
        number,
        boolean,
        null,
        undefined,
      }
      console.log(baseType);
      /** 结果:
      {
        '0': 'string',
        '1': 'number',
        '2': 'boolean',
        '3': 'null',
        '4': 'undefined',
        string: 0,
        number: 1,
        boolean: 2,
        null: 3,
        undefined: 4
      }
       */
    
      // 正反映射
      console.log(
        baseType.string,
        baseType.number,
        baseType.boolean,
        baseType.null,
        baseType.undefined
      ); // 结果:0 1 2 3 4 ,说明 默认索引从零开始递增
      console.log(baseType[0], baseType[1], baseType[2], baseType[3], baseType[4]); // 结果:string number boolean null undefined ,可以根据
  2. 赋值枚举(自定义索引)
    赋值的值必须是整数且以 '=' 的方式进行赋值,如果不是整数将无法进行正反映射
    enum sex {
        男 = 101,
        女 = 102,
    }
    console.log(sex); // 结果:{ '101': '男', '102': '女', '男': 101, '女': 102 }
    
    // 正反映射
    console.log(sex.男, sex.女); // 结果:101 102
    console.log(sex["101"], sex["102"]); // 结果:男 女