JS Refactoring Combo: Извлечение константы массива из цепочки сравнения строк

Когда переменная сравнивается со строковым значением, проще всего начать со сравнения variable === "value" или variable !== "value". Со временем они могут перерасти в более длинные последовательности, например, variable === "value1" || переменная === "значение2" || переменная === "значение3".

Значения, с которыми сравнивается переменная, часто сами по себе являются значимой коллекцией. Рефакторинг их в массив и использование array.includes(variable) может облегчить повторное использование и расширение, а осмысленное имя массива может облегчить понимание кода.

До (пример)

if (extension !== "js" 
    && extension !== "ts" 
    && extension !== "tsx") {
  handleUnsupportedExtension(extension)
}
Вход в полноэкранный режим Выход из полноэкранного режима

Шаги рефакторинга

💡 Шаги рефакторинга выполнены с использованием P42 JavaScript Assistant v1.105

  1. Преобразуйте цепочку сравнения строк в array.includes
  2. Извлечение массива в переменную
  3. Переместить переменную извлеченного массива, например, в начало файла (не показано)

После (пример)

const SUPPORTED_EXTENSIONS = ["js", "ts", "tsx"];
if (!SUPPORTED_EXTENSIONS.includes(extension)) {
  handleUnsupportedExtension(extension)
}
Вход в полноэкранный режим Выйти из полноэкранного режима

Оцените статью
Procodings.ru
Добавить комментарий