我试图遍历枚举中的所有值,并将每个值赋给一个新的枚举。这就是我想到的……
enum Color {
Red, Green
}
enum Suit {
Diamonds,
Hearts,
Clubs,
Spades
}
class Deck
{
cards: Card[];
public fillDeck() {
for (let suit in Suit) {
var mySuit: Suit = Suit[suit];
var myValue = 'Green';
var color : Color = Color[myValue];
}
}
}
部分
var mySuit: Suit = Suit[suit];
不编译并返回错误
Type 'string' is not assignable to type 'Suit'
.
如果我在上面徘徊
suit
在for循环中,它向我展示
let suit: string
.
var color : Color = Color[myValue];
编译时也不会出错。在这里我做错了什么,因为西装和颜色的例子看起来和我一模一样。
我在2.9.2版的typescript上,这是tsconfig.json的内容
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"sourceMap": true
}
}
是否有更好的方法可以迭代枚举中的所有值,同时为每个迭代维护枚举类型?
谢谢,