Как пользоваться
- Вставьте JavaScript, откройте файл
.jsили начните с примера. - Минифицированный код появляется по мере ввода, с размером до и после. Синтаксическая ошибка показывается со строкой и столбцом.
- Скопируйте его или скачайте как
script.min.js.
Что он делает
Минификатор JavaScript запускает Terser — минификатор, встроенный в большинство инструментов сборки:
- Удаляет пробелы и комментарии.
- Сокращает имена локальных переменных и параметров (
firstстановитсяn). Имена верхнего уровня остаются как есть, чтобы другие скрипты на странице могли по-прежнему вызывать ваши функции. - Удаляет код, который никогда не выполнится, и упрощает выражения (
if (x) { return a } else { return b }становитсяreturn x ? a : b).
Стоит ли оно того?
JavaScript — самое дорогое, что загружает страница: его нужно скачать, разобрать и выполнить. Минификация обычно вдвое уменьшает скрипт до сжатия gzip или Brotli и часто экономит ещё треть после него, потому что короткие имена и отсутствие комментариев тоже сказываются. Инструменты сборки вроде Vite и esbuild уже минифицируют для продакшена; эта страница — для скриптов, которые вы пишете и публикуете вручную, и чтобы посмотреть, что минификация делает со сниппетом.
Частые вопросы
Может ли минификация сломать мой код?
Terser сохраняет смысл валидного кода. Код, который во время выполнения читает имена собственных функций или свой исходный текст (это редкость), может вести себя иначе. Храните читаемую версию как исходник и тестируйте минифицированную.
Поддерживается ли современный JavaScript?
Да, включая модули, классы, async/await и optional chaining. Он не меняет того, в каких браузерах работает ваш код.
А source maps?
Эта страница их не создаёт. Инструменты сборки записывают source maps рядом с минифицированным файлом, благодаря чему инструменты разработчика в браузере показывают ваш исходный код.
Загружается ли мой код куда-то?
Нет. Terser загружается в ваш браузер и работает там.