Cтоит ли использовать jQuery если знаешь JavaScript?

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

В связи с этим часто возникает ситуация когда в перемешку идет jQuery синтаксис и JS. Допустим, когда используется какой-то jQuery плагин. В связи с этим возникает вопрос: стоит ли по максимуму пользоваться нативным JS в своем коде или же лучше использовать jQuery если он и так у нас подключен на страницу?
  • Вопрос задан
  • 1313 просмотров
Пригласить эксперта
Ответы на вопрос 6
@springimport
JQuery в основном используется как обертка над DOM и событиями. Логика в любом случае пишется как обычно.
Ответ написан
Комментировать
Дмитрий Беляев
насчет "в разы" вы загнули.
как и с "только на jq."

Валера Удав
"В связи с этим часто возникает ситуация когда в перемешку идет jQuery синтаксис и JS"
Синтаксис тут только один, это же не язык, и даже не фреймворк, а библиотека.
Она призвана помочь быстрее писать код и предоставляет совместимость со старыми браузерами для многих нативных вещей, которые не получили на тот момент однозначной реализации.

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

Я пришел к тому, что делаю импорты необходимых функций, которых мне не хватает при разработке на выбранном мной фреймворке, но не противоречит архитектуре выбранного приложения.
К примеру в React+Redux приложении мне совсем не нужны методы для работы с DOM, но полезен $.ajax.
import {ajax} from 'jquery';
Jquery для меня - это такой универсальный помощник, который может пригодится.
Люди, которые отказываются от jq полностью все равно находят аналоги(которые могут быть лучше, как могут и не быть) или пишут мини-библиотеки сами потому что нативный апи содержит очень много бойлерплейта(чего стоит только nodeList перебрать).
Ответ написан
Комментировать
littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.
Нужно много кода и старые браузеры - jQuery.
Поддержка только современных браузеров - чистый js.

Нужно взвешивать, что важнее - грузить "тяжелый" jquery или кучу Вашего кода. Если js не так уж много, то лучше native.

А так есть react/angular и т.д.

upd:
забыл добавить. Клевым бонусом является наличие кучи плагинов на любой вкус под jQuery. Под чистый js тоже есть, но меньше и там хуже с кроссбраузерностью.

Главное не дойти до уровня: "Как с помощью jQuery сложить 2 числа?" :D
Ответ написан
Rou1997
@Rou1997
Конечно, jQuery, код проще и быстрее пишется.
Ответ написан
@Y0Y
Вы говорите, что только подбираетесь к теме React/Angular и т. д.

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

При дальнейшей работе Вы таких ножей увидите еще не мало, но таскать такие библиотеки не всегда эффективно. В данном случае я бы поддержал идею модульности, раскрывающуюся в npm. Но, конечно, предостерегаю от добавления зависимостей на каждый чих.

К слову, современные фреймворки "поощряют" работу без jQuery.
Ответ написан
Комментировать
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Либо совсем без jQ (что работает шустрее в разы)
Либо только на jQ - иначе рискуете вызвать утечки памяти в самой jQ

Лично мой выбор - подрубить polyfill.io (чтоб не париться совместимостью со старыми браузерами) и использовать нативный DOM-api
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы