Почему у браузеров нет jQuery?

Я использую jQuery на нескольких моих сайтах, и хотя я использую CDN для его обслуживания, для посетителей просто не имеет смысла загружать jQuery каждый раз. jQuery должен быть самой широко используемой инфраструктурой JavaScript в мире - не было бы более разумным, если бы браузеры просто установили его по умолчанию?

Таким образом, миллионы раз в день можно было бы избежать загрузки jQuery. Либо с веб-сайтов людей, либо из CDN.

Все, что было бы действительно необходимо, это какой-то оператор if:

 <!--[if jQuery gt 11]>

Есть ли что-то, что может помочь мне запретить пользователям совершать поездку на CDN, если у них уже есть jQuery в кеше с другого сайта?

19 голосов | спросил user1914292 4 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 04 Sep 2015 11:09:54 +0300 2015, 11:09:54

5 ответов


54

Если вы используете jQuery из популярного CDN, такого как размещенные библиотеки Google или cdnjs , он не будет перезагружен, если ваш посетитель находился на сайте, который ссылался на него из того же источника (при условии, что кешированная версия не истек).

jQuery - популярная библиотека, как вы говорите, но связать ее с браузером вряд ли произойдет по нескольким причинам:

  1. jQuery относительно невелик (по сравнению с библиотеками, которые иногда поставляются в браузерах, например Flash). Самые большие узкие места производительности на среднем сайте вряд ли будут связаны с загрузкой jQuery.
  2. Усовершенствования JavaScript /ECMAScript означают, что разработчикам все чаще не требуется зависеть от jQuery. (См. youmightnotneedjquery.com .)
  3. Существует множество других популярных библиотек JavaScript. Браузеры не предназначены как хранилища для кода JavaScript. Отслеживание популярности скриптов, сокращение менее популярных библиотек и сохранение актуальности могут быть лучше всего предоставлены веб-разработчикам отдельных сайтов.
ответил Nick 4 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 04 Sep 2015 11:40:43 +0300 2015, 11:40:43
21

Не только jQuery не единственная популярная JS-библиотека, браузер, возможно, должен будет включать несколько версий. В Google CDN в настоящее время перечислены: 42 версии jQuery; 44 версии пользовательского интерфейса jQuery; 6 версий jQuery Mobile.

Лучше разрешить веб-разработчикам определять, какую версию библиотеки загружать на основе требований своего веб-сайта. Если вы используете текущую производственную версию jQuery на своем веб-сайте и , загрузите ее из более популярного CDN, тогда есть хорошая вероятность, что ваши посетители уже будут кэшировать в любом случае.

ответил Andrew Lott 4 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 04 Sep 2015 13:40:02 +0300 2015, 13:40:02
14

Браузер - это двигатель, который не является обязанностью дизайнера-дизайнера, чтобы узнать, какое топливо и дополнительные детали вы собираетесь положить в свой автомобиль и включить его в свой автомобиль. Если бы они сделали это, браузеры были бы огромным вирусом, потому что следующий вопрос будет «почему просто jQuery?», И мы закончили бы поддерживать репозитории зависимостей.

Кроме того, будем ли мы включать все версии? Что делать, если кто-то хочет использовать пользовательскую версию? Что, если кто-то не захочет использовать эту библиотеку? Как часто они объединятся и катят последние выпуски? Будем ли мы входить в разные браузеры с разными версиями jQuery? Они даже не могут реализовать стандартизованные функции HTML, CSS и JavaScript. Что делать, если один из поддерживающих браузеров не включит библиотеку или ее конкретную версию?

Браузеры предоставляют строительные блоки и среду для создания не уже готового решения.

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

Если вы действительно обеспокоены размером jQuery и использованием полосы пропускания, тогда не используйте его. Вы когда-нибудь слышали о Vanilla JS ? Это еще более популярная библиотека, которая используется буквально почти всеми, включая сам jQuery! И это уже выполнило вашу мечту, потому что оно включено в каждый браузер!

ответил totymedli 4 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 04 Sep 2015 17:43:23 +0300 2015, 17:43:23
2

Причиной использования библиотеки, такой как jQuery, является совместимость.

Браузеры стали более стандартными, но, используя библиотеку jquery, вы поставляете себя, вам не нужно беспокоиться о различиях между семействами браузеров и версиями

Предоставляя jquery самостоятельно, вы обязательно будете иметь последовательный api.

Если у нас есть jquery, встроенный в браузер, вы должны проверить, какая версия у пользователя есть, и мы вернулись к браузеру и «Этот сайт лучше всего просматривать в ...»

Так что наличие jquery-сборки в браузере не имеет смысла.

Кроме того, кеширование работает, поэтому даже если у пользователя еще нет вашей версии jquery, ее нужно только загрузить.

ответил Lenne 5 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 05 Sep 2015 15:38:03 +0300 2015, 15:38:03
-2

Я действительно думаю, что респонденты здесь не понимают, что ответ на вопрос - это, вероятно, браузеры должны включать в себя наиболее широко используемые библиотеки, а также полисы и т. д. на стороне клиента.

Как заявляет человек, задающий вопрос, условные комментарии могут быть использованы для обеспечения того, чтобы те, кто использует браузеры, которые не включают jquery, были отнесены к соответствующей версии.

JQuery также включает в себя собственную поддержку обратной совместимости через migrate, позволяя условным комментариям предоставлять ретро-поддержку для кого-то с упакованной версией старой библиотеки jquery без загрузки всей новой библиотеки.

Аргумент FOR, содержащий их в браузерах, будет не только о пользовательском опыте и стоимости, но и об этой планете, в которой мы живем. Использование данных является огромным вкладом в глобальное загрязнение, и обеспечение того, чтобы ненужная передача данных была сведена к минимуму, может оказать существенное влияние на наш углеродный след.

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

Это ухудшает работу пользователей для всех в Интернете. И расходы крупных предприятий огромные суммы денег.

Как разработчик, вы просто создадите необходимые резервные копии, необходимые для IE и т. д., так что в чем проблема - вероятно, это должно быть обязательно включено?

ответил Andy Bbop 29 J000000Saturday17 2017, 19:14:48

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132