Что такое Линтер?
Продвинутые темы
Линтер (linter) — это инструмент статического анализа кода, который находит ошибки, потенциальные баги и нарушения стиля без запуска программы.
Что делает
- Находит ошибки — необъявленные переменные, недостижимый код, неверные типы.
- Ловит потенциальные баги —
==вместо===, забытыйawait, неиспользуемые переменные. - Обеспечивает единый стиль — правила именования, форматирования, структуры.
- Применяет best practices — правила для React (hooks), доступности, безопасности.
ESLint (стандарт для JS/TS)
// eslint.config.js (flat config, ESLint 9+)
export default [
{
rules: {
'no-unused-vars': 'error',
eqeqeq: 'error',
},
},
];Плагины: eslint-plugin-react, -import, -jsx-a11y, @typescript-eslint.
Линтер против форматтера
- Линтер (ESLint) — качество кода, логические проблемы, стиль.
- Форматтер (Prettier) — только форматирование (отступы, кавычки, переносы).
Их часто используют вместе.
Зачем в команде
- Единый стиль без споров.
- Раннее обнаружение проблем (до ревью/рантайма).
- Автоисправление (
--fix), интеграция в CI и pre-commit хуки.
Коротко для собеседования
Линтер (ESLint) — статический анализатор: находит ошибки, потенциальные баги (==, забытый await), нарушения стиля и best practices без запуска кода. Отличается от форматтера (Prettier — только форматирование). Даёт единый стиль, раннюю ловлю проблем и автофикс.