How to loop through all enum values in Javascript?
To iterate over enums:
1. Use the Object. keys() or Object. values() methods to get an array of the enum's keys or values.
2. Filter out any unnecessary values.
3. Use the forEach() method to iterate over the array.
enum Sizes2 {
Small,
Medium,
Large,
}
const keys2 = Object.keys(Sizes2).filter((v) => isNaN(Number(v)));
console.log(keys2); // 👉️ ['Small', 'Medium', 'Large']
keys2.forEach((key, index) => {
// 👇️ Small, Medium, Large
console.log(key);
});
const values2 = Object.values(Sizes2).filter((v) => !isNaN(Number(v)));
console.log(values2); // 👉️ [0, 1, 2]
values2.forEach((value) => {
// 👇️ 0, 1, 2
console.log(value);
});
// ✅ For STRING Enums
enum Sizes {
Small = 'S',
Medium = 'M',
Large = 'L',
}
const keys1 = Object.keys(Sizes);
console.log(keys1); // 👉️ ['Small', 'Medium', 'Large']
keys1.forEach((key, index) => {
// 👇️ Small, Medium, Large
console.log(key);
});
const values1 = Object.values(Sizes);
values1.forEach((value, index) => {
// 👇️ S, M, L
console.log(value);
});