Reputation: 168
Let's say I have defined
enum Sort {
nameAsc = 'nameAsc',
nameDesc = 'nameDesc'
}
Can I do something like this?
const key = 'name' + 'Desc';
Sort[key]
Thanks in advance
Upvotes: 3
Views: 6845
Reputation: 18513
This:
// index.ts
enum Sort {
nameAsc = 'nameAscValue',
nameDesc = 'nameDescValue'
}
const key = 'name'+'Desc';
console.log(Sort[key]);
Compiles to (using 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]);
Which outputs (using node index.js
):
nameDescValue
Upvotes: 4