Примечание. Этот вопрос был перефразирован, поэтому мой ответ отражает первоначальный вопрос, но я продолжал добавлять.
Абсолютно .Jquery IS Javascript, и хотя он действительно абстрагирует многие кросс-браузерные расхождения в DOM, он все еще подвержен тем же точным ошибкам синтаксического анализа, недопониманию области действия и т. Д.
Использование jQuery без знания базовых знаний DOM или необходимых знаний Javascript - это то, что я считаю опасным, отчасти как предоставление очень мощного оружия ребенку, который просто может случайно выстрелить себе в ногу, не зная, как использовать такой мощныйинструмент правильным способом.
Человек, которому преподают прямо с jQuery, абсолютно не знает, как отлаживать проблемы, если возникающая ошибка ссылается на что-либо в DOM.Для чего-то столь же простого, как сравнение, чтобы увидеть, является ли элемент другим элементом (для таких вещей, как текущее состояние), они могут попробовать что-то вроде:
if ( $('a.current') == $('a.current') ) { }
, который вернул бы false, так как два уникальных объекта jQuery созданы.Если бы они знали, как получить ссылку на узлы DOM, они могли бы просто сделать $('#el')[0] == $('#el')[0]
.
Каждый раз, когда вы используете плагин jQuery и сталкиваетесь с каким-то таинственным поведением, без знания DOM вам в значительной степени приходится полагаться на кого-то другого, чтобы помочь вам.Разработчики, обладающие знаниями DOM, смогут лучше отлаживать и узнавать корень проблемы, поэтому вы только настраиваете себя на то, чтобы терять больше времени, ломая голову, ломая голову в земле jQuery.
Более того, если вы хотитекогда-либо достигать высокого уровня знаний, а не просто быть обычным разработчиком joe jQuery, ему очень понадобятся обширные знания о расхождениях в DOM и Javascript в целом, иначе вы значительно ограничите свой уровень навыков.
Если вы останетесь на Stackoverflow на некоторое время, вы увидите это в повседневных вопросах, в которых людям, которые воспользовались легким ярлыком, не хватает базовых знаний JS / DOM, необходимых для решения своих проблем.