Чи є хороший міні-мініатюр JavaScript? [зачинено]


132

Який JavaScript minifier ви рекомендуєте?



Хоча питання старе і закрите, станом на 2019 рік - терсер ( github.com/terser-js/terser ) - це казковий хороший мініфікатор. Також є плагін для Rollup, який чудово підходить для мінімізації пакетів на льоту.
Леві Робертс

Відповіді:


111

UglifyJS2 , використовуваний проектом jQuery.


17
Ви можете використовувати UglifyJS в Інтернеті без необхідності його встановлення - jscompress.com . +1 для продукту, використовуваного jQuery
TMS

1
це використовується більше, ніж закриття?
FutuToad

@FutuToad: Поточна версія - UglifyJS2 . Я шукав порівняння мініфікаторів і знайшов тут статистику lisperator.net/uglifyjs - здається, що Google Closing повільніше, ніж UglifyJS. Однак закриття може мінімізувати проекти AngularJS. Тож чіткого переможця немає. Я здогадуюсь (після години тривалих досліджень), що UglifyJS2 використовується більше, ніж GC.
Martin Martin Vseticka

PS: Ви можете спробувати Minify JS, який базується на UglifyJS2, і ваші вихідні коди не надсилатимуться на віддалений сервер. ;)
Мартін Всетічка

Чи підтримує UglifyJS es6? всі інструменти, які я знайшов помилки кидка, оскільки я використовую багато функцій es6 у своїх файлах.
kinger6621

31

Активний

Застарілий


Компілятор закриття Google, як правило, досягає менших файлів, ніж YUI Compressor, особливо якщо ви використовуєте розширений режим, який для мене виглядає непокоїть, але добре працює над одним проектом, на якому я його використовував:

Кілька великих проектів використовують UglifyJS, і я був дуже вражений ним з часу переключення.


2
Простий режим Google CC також досягає менших розмірів, ніж YUI, і це безпечно
gblazex

10

Якщо ви використовуєте PHP, ви можете також подивитися на minify, який може мінімізувати та комбінувати файли JavaScript. Інтеграція досить проста і може бути виконана визначеними групами файлів або простою рядком запиту. Мінімізовані файли також кешовані, щоб зменшити завантаження сервера, і ви можете додати заголовки терміну дії через minify.


10

JavaScript Minifier дає хороший API, який ви можете використовувати програмно:

curl -X POST -s --data-urlencode 'input=$(function() { alert("Hello, World!"); });' http://javascript-minifier.com/raw

Або завантаживши файл і переспрямувавшись на новий файл:

curl -X POST -s --data-urlencode 'input@ready.js' http://javascript-minifier.com/raw > ready.min.js

Сподіваюся, що це допомагає.


9

Можна скористатися / спробувати декілька:


1
Що таке гіперкручування? Це те, що я зрозумів на цю тему: ajaxmin.codeplex.com/discussions/260683
Ehtesh Choudhury

1
@EhteshChoudhury Це означає, що мініфікатор стає ще агресивнішим щодо цього. Він виймає невикористаний код і скорочує також імена локальних змінних.
Кріс ван дер Маст




Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.