Минификатор и Форматтер JavaScript
Сжимайте или форматируйте JavaScript-код с настраиваемыми параметрами
Документация Минификатора и Форматтера JavaScript
Что это за инструмент?
Минификация JavaScript удаляет пробелы, комментарии и ненужные токены, сохраняя семантику выполнения. В отличие от CSS, необходимо соблюдать правила Автоматической Вставки Точки с Запятой (ASI). Инструмент применяет консервативное удаление пробелов, сохраняя ASI-чувствительные переносы строк, и полностью удаляет комментарии (// и /* */).
Основные возможности
- Удаление пробелов и комментариев: удаляет пробелы между операторами, пустые строки, // и /* */. Сохраняет строки, шаблонные литералы и регулярные выражения.
- ASI-безопасная обработка переносов строк: сохраняет переносы перед операторами начинающимися с (, [, /, +, -.
- Без переименования переменных: в отличие от Terser/UglifyJS, не переименовывает локальные переменные.
- Поддержка ES6+: стрелочные функции, деструктуризация, шаблонные литералы, опциональная цепочка (?.), нулевое объединение (??).
- Настраиваемый форматтер: 2/4 пробела или табуляция; переносы строк после {/}/; и перед //; нормализация кавычек.
Типичные случаи использования
- Отладка разработки: форматирование минифицированного JS без source map.
- Быстрая минификация: уменьшение inline-JS без Webpack.
- Анализ безопасности: форматирование запутанных сторонних скриптов.
- Оценка размера: сравнение байт до/после.
Как использовать JS Минификатор
Два режима: Minify (удаление комментариев/пробелов) и Beautify (переформатирование с согласованными отступами).
Чтобы сжать JavaScript:
- Вставьте JavaScript в поле ввода или загрузите .js файл.
- Нажмите “Минифицировать”. Пробелы и комментарии удаляются, ASI-чувствительные переносы сохраняются.
- Скопируйте или скачайте .js. Процент сжатия отображается внизу.
Чтобы отформатировать JavaScript:
- Вставьте минифицированный JavaScript в панель ввода.
- Выберите стиль отступа и нажмите “Форматировать”.
- Отформатированный результат отображается в панели вывода.
Зачем минифицировать JavaScript?
Минификация JS уменьшает размер скриптов, снижая TTFB и TTI. Только пробелы: 20-40%; с переименованием Terser: 40-65%. Gzip: ещё 60-75%.
Минифицированный JS снижает время парсинга V8. На мобильных устройствах каждый сохранённый KB улучшает FID и INP (Core Web Vitals).
Настройки форматирования
Восстанавливает читаемые отступы из минифицированного JS. Обрабатывает вложенные функции, классы, структуры управления.
- Настраиваемый отступ: 2 пробела, 4 пробела или табуляция
- Переносы строк после {/}/; и перед //-комментариями
- Нормализация стиля кавычек
- Вложенные функции и классы с возрастающими уровнями отступа
Настройки минификации
Текстовые проходы трансформации для уменьшения байт без изменения поведения.
- Все //-комментарии удалены
- Все /* */-комментарии удалены (включая JSDoc)
- Пробелы и пустые строки между операторами удалены
- ASI-чувствительные переносы перед (, [, /, +, - сохранены
- Строки, шаблонные литералы и регулярные выражения не изменяются
Ожидаемое влияние на размер файла
Текстовый уровень: 20-40% сокращения. Terser: 40-65%. Gzip: ещё 60-75%; в сумме 85-90%.
Связанные инструменты
CSS Минификатор и Украшатель
Сжатие или украшение CSS кода, удаление пробелов и комментариев для оптимизации размера файла или форматирование кода для удобочитаемости
HTML Минификатор и Украшатель
Сжатие или украшение HTML кода, удаление пробелов и комментариев для оптимизации размера файла или форматирование кода для удобочитаемости
JSON Форматтер
Форматирование и валидация JSON данных для улучшения читаемости и отладки
XML Форматтер
Форматирование и валидация XML данных с подсветкой синтаксиса
Regex-Тестер
Тестирование и отладка регулярных выражений с мгновенными результатами совпадений
Проверка различий текста
Сравнение различий между двумя текстами или файлами с бок о бок подсвеченным видом