Бесплатный конвертер

JavaScript Минификатор

Мгновенно минифицируйте и сжимайте код JavaScript в вашем браузере. Удаляйте комментарии, сжимайте пробелы и уменьшайте размер файла. Бесплатно и конфиденциально.

Перетащите JS файл сюда

Поддерживает файлы .js. Или вставьте ваш JavaScript выше.

Или

Об этом инструменте

Минимизация JavaScript уменьшает размер исходного кода за счет удаления ненужных символов и (с использованием соответствующих минификаторов) переименования локальных переменных в более короткие имена. Первая категория — удаление пробелов и комментариев — проста и безопасна. Второе — переименование переменных — требует понимания правил области действия и это то, что лучше всего делают такие производственные минификаторы, как Terser и esbuild.

Этот инструмент ориентирован на безопасную минификацию: удаление комментариев, свертывание пробелов, удаление лишних точек с запятой и сокращение очевидных шаблонов. Переименование переменных консервативно: затрагиваются только локальные переменные в ясных областях, а имена, на которые ссылаются внешние ссылки, остаются в покое. Результат функционально идентичен исходнику.

Для минимизации промышленного уровня специальные инструменты (Terser, esbuild, swc) понимают всю модель области действия ECMAScript и производят значительно меньший результат. Этот инструмент предназначен для быстрой минификации на стороне браузера, когда полная настройка сборки недоступна.

Зачем минимизировать JavaScript

Пакеты JavaScript обычно представляют собой самый большой ресурс на современной веб-странице. Минимизация обычно приводит к уменьшению размера на 30–60% по сравнению с неминифицированным источником. В сочетании с gzip или Brotli сокращение несколько уменьшается, но комбинация все равно экономит измеримые байты — особенно для пользователей с медленными соединениями.

Более быстрый JavaScript также означает более быстрое время взаимодействия. Скрипты меньшего размера загружаются быстрее, анализируются быстрее и выполняются быстрее. Для сайтов, где TTI влияет на показатель отказов и рейтинг SEO, минификация — один из самых дешевых вариантов.

Как использовать

Вставьте JavaScript, получите уменьшенную версию.

  1. Добавить ввод JavaScript: Вставьте исходный код в область ввода или перетащите файл .js. Минификатор поддерживает современный JavaScript (ES2015+), включая стрелочные функции, литералы шаблонов, классы и модули.
  2. Выберите варианты: По умолчанию комментарии удаляются, а пробелы сворачиваются. Переименование локальных переменных консервативно; включите более агрессивное переименование, если вам нужно максимальное сжатие.
  3. Минимизировать: Минификатор анализирует исходный код, удаляет пробелы и комментарии и выдает компактный результат. Синтаксические ошибки в исходном коде приводят к четким сообщениям об ошибках.
  4. Используйте вывод: Замените исходный код сценария в производстве. Для полной оптимизации используйте сборщик, который занимается встряхиванием деревьев и устранением мертвого кода.

Общие случаи использования

Технические детали

Минификатор токенизирует JavaScript с помощью синтаксического анализатора, который учитывает синтаксис ECMAScript. Комментарии (однострочные и многострочные) удаляются, за исключением комментариев к лицензии, отмеченных /*! префикс. Пробелы сворачиваются, за исключением случаев, когда это необходимо синтаксически (между идентификаторами, после ключевых слов).

Консервативное переименование переменных сокращает локальные переменные в простых областях. Глобальные, экспортированные и импортированные имена не переименовываются — это нарушит внешние ссылки. Для глубокого переименования используйте Terser или esbuild с надлежащим анализом с учетом модулей.

Крайние случаи: автоматическая вставка точки с запятой (ASI) означает, что минификатор должен сохранять символы новой строки в некоторых контекстах, чтобы избежать изменения поведения программы. Литералы шаблонов, литералы регулярных выражений и JSX (если входные данные включают его) сохраняются именно потому, что их содержимое может быть небезопасно сжимать.

Лучшие практики

Часто задаваемые вопросы

Изменяет ли минификация работу моего кода?
Нет. Минификация удаляет пробелы и комментарии, которые не влияют на выполнение. Сокращение переменных (искажение) переименовывает локальные переменные, но сохраняет поведение. Глобальные переменные и экспортированные имена сохраняются.
Должен ли я минимизировать в разработке или производстве?
Используйте только минифицированный код в производстве. Во время разработки сохраняйте исходный читаемый код. Большинство инструментов сборки (Webpack, Vite, esbuild) автоматически выполняют минимизацию в рамках процесса сборки.
В чем разница между минификацией и обфускацией?
Минимизация уменьшает размер, сохраняя при этом функционально читаемый код после форматирования. Обфускация намеренно усложняет понимание кода (кодирование строк, выравнивание потока управления). Этот инструмент ориентирован на уменьшение размера, а не на запутывание.
На какое уменьшение размера мне следует рассчитывать?
Обычно 30-60% перед gzip. Хорошо прокомментированный код с длинными именами переменных видит самые большие сокращения. В сочетании со сжатием gzip файлы JavaScript часто на 80-90% меньше исходного источника.
Мой код загружен на сервер?
Нет. Минификатор запускается в вашем браузере.
Насколько меньше будет мой JavaScript?
Обычно снижение составляет 30–60%. Код с большим количеством переменных и длинными идентификаторами сжимает больше; код с большим количеством выражений сжимается меньше.
Должен ли я минимизировать вручную?
Никогда. Поддерживайте читаемый код JavaScript в исходном коде. Запускайте минификацию на этапе сборки или как часть развертывания.
Работает ли он на TypeScript?
TypeScript необходимо сначала скомпилировать в JavaScript с помощью tsc или esbuild. После компиляции полученный JavaScript можно минимизировать.