Какая библиотека минификации JavaScript приводит к лучшим результатам? [закрытый]

Я думаю, что нашел решение. внутри события open каждого timePicker я могу прочитать e и сделать это:

open: function (e) {
           let listContainer = e.sender.timeView.list;
       }

и listElement будет контейнером для тега <ul>, который я искал. тогда я могу сделать это:

let listElement = $(listContainer).find('ul');

И это все. Это было так просто.

12
задан Gruber 19 September 2012 в 20:40
поделиться

8 ответов

Лучше немного субъективно здесь, так как существует несколько факторов для рассмотрения (даже вне тех, которых Вы перечисляете):

  1. Сжатый размер не рассказывает целую историю, так как агрессивный компрессор может привести к более медленной производительности во время выполнения из-за дополнительного времени, должен был выполнить распаковку кода до интерпретации браузера.
    • Ошибки являются самыми легкими избежать при управлении входным кодом - разумное использование точек с запятой имеет большое значение. Выполненные JSLint по Вашему коду, и решают любые сообщенные проблемы.
    • Стиль и размер самого кода будут влиять на результаты, конечно.
    • И наконец, стоит иметь в виду, что серверная сторона gzip сжатие будет всегда приводить к меньшей загрузке, чем какое-либо сжатие кода, хотя некоторые инструменты сжатия кода объединятся с gzip эффективнее.

Моя рекомендация состоит в том, чтобы выполнить код, который Вы намереваетесь сжать через несколько компрессоров (автоматизированный инструмент сравнения, таких как CompressorRater помогает...), и выберите на основе результатов - не забывающий тестировать, представлять и сравнивать фактическое время загрузки страницы позже.

3
ответ дан 26 October 2019 в 10:47
поделиться

Отличным способом сравнить лучшие компрессоры является JavaScript CompressorRater Arthur Blake.

То, чем Вы обычно интересуетесь, является размером после сжатия с GZIP (необходимо настроить веб-сервер для выполнения сжатия).

Лучшие результаты обычно от Компрессора YUI или Dojo ShrinkSafe. Различия были столь небольшими, что через некоторое время я прекратил выдерживать сравнение, и я просто использую Компрессор YUI.

Править: с исходного времени задали этот вопрос, 2 новых minifiers были выпущены. Они оба обычно, по крайней мере, так же хороши как, если не лучше, чем, Компрессор YUI.

РЕДАКТИРОВАНИЕ 2:

  • UglifyJS, выбранный командой jQuery для официальных 1,5 выпусков
11
ответ дан 26 October 2019 в 10:47
поделиться

Определенно Dojo выезда Shrinksafe. Это было переделано недавно, и по-видимому производительность была улучшена.

2
ответ дан 26 October 2019 в 10:47
поделиться

Как пользователь Mootools, я замечаю, что Mootools заменил Упаковщика Dean Edwards Компрессором YUI. Я также помню, что было обсуждение Ajaxian.com, где Julien (Автор компрессора) указал на области, где Компрессор YUI добился большего успеха. Я использовал Компрессор и никогда не видел проблемы, но я никогда не учился, к которому производит меньше ошибки при запутывании.

0
ответ дан 26 October 2019 в 10:47
поделиться

Компрессор YUI сжимается более безопасно и сжато, чем Packer. Я полагаю, что Packer нужен JavaScript, который будет отлично сформирован иначе, он вызовет ошибку JavaScript, когда сценарий будет загружен. Однако, независимо от которого Вы используете, Вы получите самое большое увеличение производительности Gzipping Ваш файл.

0
ответ дан 26 October 2019 в 10:47
поделиться

Существует также порт YUICompress для.NET (который включает задачу сборки для TFS) на Codeplex.

0
ответ дан 26 October 2019 в 10:47
поделиться

Это старый вопрос, и Google Closure Compiler тогда еще не существовало. Я еще не использовал его, но выглядит действительно хорошо.

1
ответ дан 26 October 2019 в 10:47
поделиться

Полное раскрытие, я стою за этим: http://www.toptensoftware.com/minime, который выполняет минификацию, обфускацию и разумный набор проверок стиля lint. В настоящее время он производит меньше продукции, чем Yui, не так хорошо, как Closure.

2
ответ дан 26 October 2019 в 10:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: