鉴于
enum myEnum {
a,b,c
}
var myEnum1: myEnum = myEnum.a;
我应该如何检查myEnum1
类型为myEnum
?
如果我使用
typeof myEnum1
它只是说它是number
而不是myEnum
答案 0 :(得分:0)
它只是说它是一个数字而不是myEnum
在运行时它将是数字(在你放松编译时安全性的情况下解决一些问题)。
然而,请查看Enum的代码:
enum MyEnum {
A
}
你得到:
var MyEnum;
(function (MyEnum) {
MyEnum[MyEnum["A"] = 0] = "A";
})(MyEnum || (MyEnum = {}));
所以给定MyEnum[num]
是真的可以假定它是一个有效的成员。
更多:讨论此类转化here