如标题中所述,如何确定Typescript中的枚举中的元素数(如本例所示)
enum ExampleEnum {
element1 = 1,
element2 = 2,
element3 = 3,
element4 = 4,
element5 = 5,
element6 = 6
}
var exampleEnumElementCount:number = ?
如何确定计数?在这种情况下应该是6
最佳答案
Typescript没有提供获取枚举元素数量的标准方法。但是给定the implementation的enum reverse mapping,以下工作原理:
Object.keys(ExampleEnum).length / 2
注意,对于string enums,您请勿除以零,因为不会生成反向映射属性:
Object.keys(StringEnum).length;
带有混合字符串和数值的枚举可以通过以下方式计算:
Object.keys(ExampleEnum).filter(isNaN).length