希望这可能会产生编译时错误,但我想我误解了枚举是如何工作的......
enum SortDirection {
ascending = 1,
descending = -1
}
type IndexSpec = {[index: string]: SortDirection};
var i: IndexSpec = {thing: 3}; // no compile time error
答案 0 :(得分:3)
所有数值都被视为值枚举值。
这是允许的,因为flag和non-flag枚举之间没有区别:
enum MyFlags {
Cool = 0x1,
Awesome = 0x2,
Neat = 0x4
}
var i: MyFlags = 5; // Cool | Neat