Основное преимущество наличия jQuery во внешнем скрипте состоит в том, что вы можете получить новую функцию в новой версии jQuery и (при условии, что jQuery правильно поддерживает кросс-браузер), вы можете автоматически иметь эту функцию доступной во всех браузерах. ваши зрители используют. Вы можете написать свой сайт, чтобы использовать эту новую функцию jQuery и знать, что она будет работать во всех браузерах общего пользования.
Если бы функциональность jQuery была встроена в браузер, вы бы застряли с подходом наименьшего общего знаменателя. Вы не могли полагаться на больше функций, чем в самом отсталом браузере или в самом старом браузере, с которым вы хотели быть совместимым. Когда была представлена новая функция, вам пришлось бы ждать почти десятилетие, чтобы все старые браузеры, которые не поддерживают эту новую функцию, перестали использоваться, прежде чем вы могли быть уверены, что ее использование безопасно. Или вам придется создать собственную кросс-браузерную поддержку для него, создав тем самым новую кросс-браузерную библиотеку, похожую на jQuery, и круг начнется заново.
С помощью jQuery вы просто включаете в свой сайт новейшую версию библиотеки и можете автоматически использовать эту новую функцию во всех распространенных браузерах.
Что касается эффективности, вы не сильно теряете, включая jQuery, поскольку внешний файл сделан правильно. Если вы используете один из наиболее распространенных CDN (например, Google) для связи с jQuery, то jQuery, вероятно, уже находится в кэше браузера и загружается с локального жесткого диска, а не загружается каждый раз, когда это необходимо. Да, его можно оптимизировать и дальше, если он будет встроен, но тогда вы потеряете все те преимущества, о которых говорилось ранее, что сводит на нет основную причину его наличия.
Кроме того, встроенные возможности не развиваются с каждым годом. Они есть. Это называется движением стандартов. Проблема в том, что он движется очень медленно. Посмотрите на CSS3 переходы. У нас есть поддержка переходов CSS3 сегодня во всех популярных версиях Firefox, Chrome, Opera и Safari, но пока нет ни в одной версии IE. Итак, поскольку мы все еще далеки от того, чтобы исчезнуть все популярное использование IE7, IE8 и IE9, мы далеки от возможности просто «использовать» CSS3 и ожидать, что браузер его поддержит. Библиотека анимации все еще нужна. Даже если IE10 выйдет завтра и автоматически поддержит все переходы CSS3, у нас все равно будет много лет, когда все старые версии IE перестанут использоваться в Интернете.