假设我有一个枚举:
enum Color {Red = 1, Green, Blue};如果我有一个数字,我可以通过这样做来获得枚举密钥:
var colorName: string = Color[2]; // colorName = "Green"但是,这给了我一个字符串。我怎样才能得到一个Color类型的变量呢?即:
colorName : Color == Color.Green发布于 2014-05-28 14:58:18
不要用数字来索引它(这会给你一个字符串),只要使用命名的member.Typescript就可以让你给枚举分配一个数字,例如
enum Color {Red = 1, Green, Blue};
var foo:Color = Color.Green; // effectively foo = 2;
console.log(foo == Color.Green); // true或者,如果你已经有了这个字符串,你可以通过一个字符串来索引Color,以获得它的编号,例如:
enum Color {Red = 1, Green, Blue};
var colorName:string = Color[2];
var color: Color = Color[colorName];
console.log(color == Color.Green); // truehttps://stackoverflow.com/questions/23903410
复制相似问题