Отформатируйте JavaScript или минифицируйте его и увидите, сколько байтов ушло
Работает в вашем браузере. Ничего из того, что вы вводите, никуда не отправляется.Форматирование JavaScript расставляет отступы и размещает инструкции так, чтобы их можно было читать; минификация убирает имена и пробелы для продакшена. Удалённые байты показаны, так что экономия на бандле в 50 KB видна до публикации. Код разбирается в браузере и никогда не загружается.
Эта страница переведена машинным способом с английского оригинала. Перевод ещё не проверен человеком, поэтому ориентируйтесь на английскую версию. Читать английский оригинал
Вставьте JavaScript или JSX в поле или нажмите «Попробовать пример»; TypeScript не поддерживается.
Оставьте «Форматировать», чтобы переформатировать код через Prettier, или выберите «Минифицировать», чтобы сжать его через terser.
Для «Форматировать» задайте «Отступ», «Перенос после», «Точки с запятой» и «Одинарные кавычки», для «Минифицировать» — показанные параметры.
Нажмите «Копировать» или «Скачать», чтобы забрать результат.
Этот инструмент делает две вещи, которых ждут от файла со скриптом. «Форматировать» прогоняет код через Prettier и возвращает тот же код в вашем стиле: два пробела, четыре пробела или табуляция, с точками с запятой или без, одинарные или двойные кавычки и выбранная ширина строки. «Минифицировать» прогоняет его через terser и возвращает самый маленький равнозначный файл с размером до, размером после и процентом экономии.
Он подходит для мелких задач, которые прерывают день. Фрагмент, скопированный из ответа в интернете, написан в стиле, которого нет в вашем проекте. Унаследованный файл содержит по три инструкции в строке. Нужно примерно понять, сколько займёт вспомогательная функция после публикации, прежде чем решить, писать ли её самому. А иногда нужно обратное: минифицированный бандл, развёрнутый настолько, чтобы понять, что делает сторонний скрипт.
У минификации два переключателя. Переименование локальных переменных в одиночные буквы даёт основную часть экономии и не меняет ничего, что видно снаружи. Сохранение имён функций стоит нескольких байтов, но оставляет читаемыми трассировки стека и всё, что читает имя функции, а это важно, если вы отправляете ошибки в сервис мониторинга.
Инструмент читает обычный JavaScript и JSX. TypeScript не поддерживается: если вставить его, ошибка парсера была бы бесполезной, поэтому страница сначала проверяет код и сообщает, какую конструкцию TypeScript нашла, например псевдоним типа или типизированный параметр. Всё работает в браузере, поэтому неопубликованный код и всё, где есть ключ, никогда не покидают ваше устройство.
Да. Без регистрации, без ограничения размера и без лимита на число файлов. Страница оплачивается несколькими объявлениями вне инструмента, и в ваш код ничего не добавляется.
Нет. И Prettier, и terser работают в вашем браузере. Неопубликованный код, внутренние эндпоинты или ключ API в объекте конфигурации никогда не покидают ваше устройство, и после закрытия вкладки ничего не сохраняется.
Нет. Инструмент читает обычный JavaScript и JSX. Если вставить TypeScript, страница назовёт найденную конструкцию, например псевдоним типа или типизированный параметр, вместо ошибки парсера, которая ничего не объясняет. Сначала уберите типы или используйте редактор с поддержкой TypeScript.
Читаемый исходный код с комментариями обычно уменьшается на 40–60 процентов, а при длинных именах переменных и пустых строках — гораздо сильнее. Уже минифицированный код почти не меняется. Показано точное число байтов, так что можно сравнить.
Mangling переименовывает локальные переменные и аргументы функций в одиночные буквы. За пределами файла эти имена никто не видит, поэтому поведение не меняется, и обычно это самая большая отдельная экономия. Экспортируемые имена и свойства объектов не трогаются.
Вернуть можно разметку, но не имена. «Форматировать» добавляет переносы строк, отступы и пробелы, чтобы код читался, но минификатор отбрасывает исходные имена переменных и комментарии, и ни один инструмент не может их восстановить.
Всё ещё не получается? Задайте вопрос об инструменте «Форматирование и минификация JavaScript» и ответить может любой, кто знает. Учётная запись не нужна.