Насколько большой "слишком большой" для javascript файла
Со всеми потрясающими плагинами jQuery, это настолько заманчиво, чтобы просто включать их повсюду, чтобы улучшить внешний вид нашего сайта.
Я ищу некоторые мнения о том, следует ли и когда меня беспокоит размер этих сценариев.
Предположим, что они кэшируются на уровне веб-сервера, поэтому я думаю, что потенциальные проблемы связаны с пропускной способностью для скриптов, обслуживаемых с веб-сервера, а также производительности в клиентском браузере, который должен загружать все эти сценарии.
Ответы
Ответ 1
Здесь есть два вопроса.
Первая - загрузка сервера. Если это проблема, вы можете использовать API AJAX Libs и получить свои библиотеки напрямую из Google CDN.
Вторая проблема - время загрузки на стороне клиента. Ну, вы должны решить, кто ваша целевая аудитория, и сколько вы хотите, чтобы пользователь подождал. Как правило, большинство веб-сайтов сегодня потребляют ~300KB
полосы пропускания на страницу, включая скрипты, таблицы стилей и изображения.
Ответ 2
Вы должны представить это в перспективе. Посмотрите, как долго загружается ваша страница и какой процент от нее является javascript. Обычно это не так уж и важно.
Так как js обычно добавляет тонкости на сайт, может быть, не имеет значения, загружается ли он последним или относительно медленно, если он не блокирует загрузку других элементов.
В том, как я это вижу, если вам нужна функциональность, вам придется загрузить код, чтобы он был неизбежным. Если это декоративно, то загрузите этот декоративный js последним, и лучше иметь его немного позже, чем не иметь его вообще.
Ответ 3
Как говорили другие для самого jQuery, лучше всего использовать любую общедоступную копию CDN, я бы также рекомендовал использовать инструмент для объединения ваших плагинов/настраиваемых сценариев в пакет (ы), который имеет смысл. Они будут различаться в зависимости от типа вашего сервера, но 2 общих инструментария ASP.NET ScriptManager Control - Script Комбинирование - что такое крупная сделка? и Bundler - Bundler теперь поддерживает Css And.less. На последнем посту есть больше информации об этой теме в целом.
Изменить: Текущее решение, используемое с .NET, http://getcassette.net/ Кассета обеспечивает лучшую историю для ASP.NET, вы сохраняете только .debug. копии файлов JS в решении, файлы javascript легко получают intellisense, когда вы запускаете отладку, вы получаете все файлы debug js, а при запуске с debug = false get объединяется и минимизируется. В обоих сценариях они имеют строки с перекосом кеша, поэтому вам не придется беспокоиться о смене + обновлении, чтобы не использовать устаревший javascript.
Ответ 4
Я не думаю, что вы должны слишком беспокоиться об этом. Обычно изображения будут потреблять большую часть вашей полосы пропускания, а не файлы Javascript.
Если вы хотите ускорить работу своего сайта, то для начала нужно уменьшить количество HTTP-запросов на вашей странице. Это, вероятно, даст гораздо лучшее повышение производительности. Попробуйте сжать все ваши .js файлы только одним и использовать методы CSS-спрайтов для отображения ваших изображений.
Ответ 5
Как долго длится строка?
Это зависит от пропускной способности целевой аудитории, пропускной способности сервера (ов) и относительного значения, которое предоставляет JS.