如何在TypeScript中将字符串转换为枚举?

我在TypeScript中定义了下面的枚举?

enum Color{
    Red, Green
}

现在在我的函数中,我收到颜色作为字符串。我试过下面的代码。

var green= "Green";
var color : Color = <Color>green; // Error: can't convert string to enum

如何将该值转换为枚举?

TypeScript 0.9中的枚举是基于字符串号的。对于简单的转换,您不需要类型断言:

enum Color{
    Red, Green
}

// To String
 var green: string = Color[Color.Green];

// To Enum / number
var color : Color = Color[green];

Try it online

我在我的OSS书中有关于这个和其他枚举模式的文档:https://basarat.gitbooks.io/typescript/content/docs/enums.html

http://stackoverflow.com/questions/17380845/how-to-convert-string-to-enum-in-typescript

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:如何在TypeScript中将字符串转换为枚举?