typescript - Typescript 中的动态枚举键
问题描述
假设我已经定义
enum Sort {
nameAsc = 'nameAsc',
nameDesc = 'nameDesc'
}
我可以做这样的事情吗?
const key = 'name' + 'Desc';
Sort[key]
提前致谢
解决方案
是的
这个:
// index.ts
enum Sort {
nameAsc = 'nameAscValue',
nameDesc = 'nameDescValue'
}
const key = 'name'+'Desc';
console.log(Sort[key]);
编译为(使用tsc index.ts
):
// index.js
var Sort;
(function (Sort) {
Sort["nameAsc"] = "nameAscValue";
Sort["nameDesc"] = "nameDescValue";
})(Sort || (Sort = {}));
var key = 'name' + 'Desc';
console.log(Sort[key]);
哪些输出(使用node index.js
):
nameDescValue
推荐阅读
- tensorflow - 如何将 RGBA 文件转换为 RGB
- excel - 在 VBA 中使用 AverageIf 键入不匹配错误
- antlr4 - 在 Antlr4 中如何确定哪些词法分析器子标记匹配?
- python - copytree(),什么是参数符号链接和忽略?
- python - Python 查找年份中剩余的天数和年份中的天数
- flutter - Flutter异步方法返回小部件不起作用
- python - 无法在 Linux 上使用 Gurobi,因为:
/gurobi811/linux64/bin/python2.7:未找到 - android-layout - 在合并布局根标签的自定义视图中应用样式
- php - 为什么我应该将我的函数分配给一个变量?
- c - C 中不允许使用类型名称