Демистификация Enum-подобных структур в Node.js: практическое руководство

  1. Основное определение перечисления.
    Давайте начнем с простого примера определения структуры типа перечисления в Node.js:
const Colors = {
  RED: 'red',
  GREEN: 'green',
  BLUE: 'blue'
};
  1. Доступ к значениям перечисления.
    Чтобы получить доступ к значениям перечисления, вы можете просто сослаться на имя свойства:
console.log(Colors.RED); // Output: 'red'
  1. Итерация перечисления.
    Иногда вам может потребоваться перебрать все значения перечисления. Вот как этого можно добиться:
for (const color in Colors) {
  console.log(color);
}
  1. Проверка перечисления.
    Чтобы проверить, существует ли значение в перечислении, вы можете использовать метод hasOwnProperty:
const value = 'red';
if (Colors.hasOwnProperty(value)) {
  console.log(`${value} exists in the Colors enum.`);
} else {
  console.log(`${value} does not exist in the Colors enum.`);
}
  1. Обратный поиск:
    Обратный поиск позволяет получить ключ на основе заданного значения. Вот пример реализации обратного поиска в Node.js:
function getKeyByValue(object, value) {
  return Object.keys(object).find(key => object[key] === value);
}
console.log(getKeyByValue(Colors, 'red')); // Output: 'RED'

Не забывайте использовать перечисления всякий раз, когда в вашем приложении есть предопределенный набор значений, поскольку они способствуют ясности кода и удобству сопровождения.