onlinetools.dev

Форматувальник і мініфікатор JavaScript

Упорядкуйте JavaScript або мініфікуйте зі справжнім стисненням і перейменуванням

Працює локально
loading…
Про цей інструмент

Упорядкуйте JavaScript із послідовними відступами й пробілами — розгорніть вендорний бандл, щоб побачити, що він насправді робить, або причепуріть код, вставлений із консолі. Мініфікатор тут справжній: Terser розбирає ваш код в AST, викидає мертвий код, скорочує імена локальних змінних і прибирає коментарі — той самий рушій, яким користуються бандлери в продакшені.

Оскільки мініфікація працює на AST, вона ніколи не ламає робочий код так, як це можуть «стискачі» на регулярних виразах: рядки, шаблонні літерали, регулярні вирази та крайні випадки ASI обробляє справжній парсер. Синтаксичні помилки повідомляються з позицією, а не породжують зіпсований вивід.

Terser завантажується лише коли ви вперше мініфікуєте, тож сторінка лишається легкою, і працює він повністю у вашому браузері — власницький код ніколи не покидає вашу машину.

Часті запитання

Наскільки меншим стане мій код?
Написаний вручну код зазвичай втрачає 30–60% до gzip: пробіли, коментарі й довгі локальні імена важать саме стільки. Код, що вже пройшов бандлер, стискається значно менше — він уже пройшов те саме перетворення один раз.
Чи змінює мініфікація поведінку?
Стиснення й перейменування зберігають семантику: перейменовуються лише локальні імена, а видалення мертвого коду прибирає гілки, які доказово не можуть виконатися. Класичний виняток — код, що спирається на Function.prototype.name або toString() власних функцій.
Чи можна розмініфікувати продакшн-код із сайту?
Форматувальник повертає пробіли й структуру, роблячи потік керування читабельним, — але оригінальні імена змінних і коментарі зникли назавжди; ви бачитимете a, b, c. Для серйозного налагодження краще брати source maps, якщо сайт їх постачає.
Чи підтримується TypeScript або JSX?
Ні — обидва потребують власних парсерів. Спершу скомпілюйте в JavaScript (tsc, esbuild), а тоді форматуйте чи мініфікуйте вивід тут.
Пов’язані інструменти