Hablemos de autos.
Oh, espera, ya lo hicimos, ¿recuerdas esa vez que nos conocimos, hace algún tiempo? Hablamos de autos. De hecho, parecía ser un experto en automóviles. Pudiste explicar, en detalle, todo lo que está bien, lo que está mal y lo emocionante de la última carrera de Fórmula 1. Sabías de memoria todos los modelos de Lamborghini, incluido su precio y disponibilidad. Incluso pensaste en comprar tu propio Ferrari 599 GTB Fiorano y estabas ahorrando (apuesto a que la cena de bistec no ayudó mucho).
Mientras explicaba las fallas de Toyota con una gran voz emocionada, de repente saltaste de tu silla y gritaste en el aire, agitando los puños sobre: "¡Maldita sea, soy un magnífico experto en todo lo relacionado con los autos! ¡Voy a ser mecánico de automóviles! "
Y así fuiste. Tuviste una entrevista, el Jefe estaba tan impresionado como yo con tu conocimiento, y fuiste contratado. Entró el primer cliente. Su embrague estaba roto. Lo inspeccionaste y no sabías qué hacer. De hecho, no tenías ni idea de cómo seguir los consejos que te dio el Jefe. Fuiste despedido.
¿Pero cómo podría ser eso? ¡Sabes todo sobre autos! Excepto por ... todo sobre autos. Puede saber muy bien que el automóvil de sus sueños tiene un motor V12, pero no sabe lo que realmente significa.
Entonces, en realidad no eres mecánico de automóviles, eres un entusiasta de los automóviles. Y hasta que aprenda cómo funcionan los automóviles , seguirá siendo un entusiasta.
Ahora déjame preguntarte. Como $.fn.text
funciona ¿Y de qué $.fn
? ¿Qué quieren decir realmente? ¿Cómo $(something)
devuelve una cosita gigantesca que contiene cosas, y qué es exactamente esa cosita? ¿Puedes replicar su funcionalidad, al menos un poco, incluso en teoría? ¿Se puede hacer frente sin jQuery?
Decir que "JavaScript nativo es difícil" es simplemente ... falso. En primer lugar, porque JavaScript como lenguaje no tiene nada que ver con el DOM , que es principalmente lo que jQuery resume. Segundo, porque una vez que aprendes un poco sobre el DOM, ya puedes navegar a través de los errores más comunes entre navegadores. Pero solo un pequeño secreto: todo es difícil al principio. La división larga fue una perra en quinto grado.
Como segunda analogía para esta respuesta: jQuery es JavaScript-DOM (no JavaScript, el idioma, solo el DOM) como Array.prototype.forEach
es for
. Funciona, para el 99% de los casos. Y funciona bien. Pero para ese 1% que no está cubierto, debe saber cómo usar el for
bucle, aunque solo sea práctico. Toda esta respuesta se basa en el lado "más puro" de la pregunta, y ni siquiera en el lado técnico (el tamaño de la biblioteca, por ejemplo, y varias otras cosas como se explica en la respuesta de Michael Dorrant). Porque me encanta JavaScript y cuando la gente parece tirarlo a un lado casualmente diciendo "pah, esos javascriptianos tontos" y agitando elegantes guantes blancos, todo se reduce a la moralidad.
Si puede aceptar el hecho de que siempre será un entusiasta de JavaScript, ¿quién soy yo para detenerlo? Pero si quieres ser un programador de JavaScript, primero debes tener el conocimiento para al menos elegir entre usar jQuery (o cualquier otra biblioteca) y no usar una biblioteca. Aprende el DOM. Aprenda como usarlo. Escriba su propia biblioteca pequeña o simplemente una colección de funciones auxiliares. Y una vez que conoces el DOM, y eliges usar jQuery - Godspeed. La pereza se otorga a aquellos que trabajaron duro.