Я начал, когда наткнулся на mootools и с тех пор не оглядывался назад. Но недавно я потратил довольно много времени на полировку своего «ванильного» JavaScript, а также начал изучать jquery (из чистого любопытства). Оказывается, вам нужно много понимать о фреймворках, различиях между ними и о том, как работает javascript, если вы хотите иметь возможность переводить свои навыки и иметь возможность свободно рефакторизовать код между ними.
например, рассмотрим это как рефакторинг логического кода между двумя платформами
MooTools
$("elementId").addEvent("click", function() {
this.setStyles({
border: "1px solid #000"
});
});
JQuery
$("elementId").click(function() {
this.css({
border: "1px solid #000"
}); // fails.
});
Я был удивлен, обнаружив, что jquery не работает, а затем подумал, что mootools расширяет прототипы элементов, добавляя .setStyles, тогда как jquery основан на функциях. Очевидно, что исправление заключается в использовании $ (this) .css - только сначала это не так очевидно. Это заставило меня осознать, что для переключения между ними потребуется больше, чем просто чтение документации по интерфейсу.
как кто-то сказал, потребовалась бы неделя, чтобы разобраться во всех нюансах jquery, даже если у вас есть опыт работы с javascript / mootools (или другим фреймворком), но это не будет такой проблемой. переход от jquery к mootools, однако, не будет такой легкой задачей, если вы не очень хорошо разбираетесь в ванильном javascript и ООП.
короткий ответ: я бы не ожидал, что программист javascript просто знает jquery, но я бы ожидал, что jquery пользователь узнает о javascript.