¿Usar o no usar? ¿Aprender o no aprender? Veamos cómo puedes evitar jQuery por completo y las razones por las que deberías seguir usándolo
Cualquiera que sean sus preferencias en términos de bibliotecas y marcos de JavaScript, jQuery ha jugado un papel importante en el ecosistema de JavaScript.
Solía ser mucho más popular hace unos años, y ahora algunas de las necesidades de jQuery han sido reemplazadas por los navegadores modernos (¡afortunadamente!), pero esta biblioteca de JavaScript todavía es utilizada por mucha gente .
¿Por qué se hizo tan popular jQuery? En primer lugar, jQuery nació en un mundo en el que las aplicaciones JavaScript no existían. A principios y mediados de la década de 2000, JavaScript se utilizaba principalmente para potenciar las presentaciones de diapositivas y otros widgets que aparecían dentro de una página, como galerías de imágenes, selectores de fechas, etc. No era lo suficientemente potente como para hacer muchas cosas sin ser demasiado lentas (las computadoras también eran más lentas, por supuesto).
Cabe señalar que jQuery no fue la única ni la primera biblioteca. Otros eran muy populares en su momento, como Mootools, YUI, Dojo Toolkit, Scriptaculous y Prototype. jQuery probablemente se convirtió en la más famosa de ellas más adelante.
En aquella época, los navegadores tenían muchos problemas de interoperabilidad. Teníamos muchas peculiaridades entre navegadores y problemas de estandarización, y jQuery nos ayudó a crear una capa de abstracción y ocupándose de todas las soluciones alternativas.
jQuery permitiría seleccionar elementos DOM utilizando la sintaxis de selectores CSS. Era muy fácil de usar y muy fácil de ampliar. Simplificaba las animaciones de JavaScript.
También ayudó a simplificar el trabajo con AJAX (y sus diferencias entre navegadores) en un momento en que este término era súper popular, y esto también le dio a jQuery un buen impulso en términos de popularidad.
Hoy en día, no tenemos muchos problemas de compatibilidad con el navegador, y la API de selectores y Fetch estandarizaron para el navegador dos de las mejores características de jQuery.
Sin duda, jQuery es un tema muy debatido. Algunas personas dicen que jQuery es una reliquia del pasado, otras todavía lo usan a diario. Algunas personas dedican su tiempo a escribir sobre por qué no necesitamos jQuery.
Seguramente su uso está disminuyendo en los últimos años:
Hoy en día, el panorama de JavaScript ha cambiado drásticamente. Dicho esto, sigue siendo útil saber lo que jQuery puede hacer por usted.
Cosas para las que usamos jQuery que ahora tienen una API de navegador estandarizada
Selección de elementos DOM
El método jQuery: Artículos de danza y ballet
$('.button')
Ahora podemos utilizar la API de selectores:
document.querySelector('.button')
Si tienes más elementos:
document.querySelectorAll('.button')
Esperemos que se cargue el DOM
El método jQuery:
$(document).ready(() = { //...})
El método DOM:
document.addEventListener("DOMContentLoaded", () = { //...})
Agregar o eliminar clases de un elemento DOM
El método jQuery:
el.addClass('big')el.removeClass('big')el.toggleClass('big')
El método DOM:
el.classList.add('big')el.classList.remove('big')el.classList.toggle('big')
Eliminar un elemento del DOM
El método jQuery:
el.remove()
El método DOM:
el.remove()
(correcto, sin cambios)
Cambiar el contenido de un elemento en el DOM
El método jQuery:
el.text('Hello')el.html('Hello')el.text()el.html()
El método DOM:
el.innerHTML = 'Hello'el.textContent = 'Hello'el.innerHTMLel.textContent
Seleccionar el elemento padre en el DOM
El método jQuery:
el.parent()
El método DOM:
el.parentNode
Escuchando eventos en elementos DOM
El método jQuery:
el.on('click', (e) = { /* ... */ })
El método DOM:
el.addEventListener('click', (e) = { /* ... */ })
Solicitudes AJAX
El método jQuery:
$.ajax({ url: '/api.json', type: 'GET' success: (data) = { console.log(data) }})
La forma moderna de JS:
fetch('/api.json') .then(response = response.text()) .then(body = console.log(body))
Animaciones
Ahora se pueden realizar animaciones jQuery en el navegador usando transiciones CSS o animaciones CSS.
Peculiaridades del navegador
Transpila tu código usando Babel, o usa polyfills específicos (polyfill.io)
¿Deberías utilizar jQuery hoy en día?
Respondemos a la pregunta que plantea este artículo en su título. Si aún no conoces jQuery, ¿merece la pena aprenderlo ahora?
En mi opinión, jQuery ya no debería usarse en proyectos nuevos que solo apunten a navegadores modernos y, por supuesto, si su proyecto depende de él por alguna razón particular, o simplemente porque usa complementos u otro código que necesita jQuery, definitivamente siga usándolo.
Algunas bibliotecas también dependen de jQuery, como Bootstrap. También puedes comprar plantillas ya preparadas que solo utilizan jQuery y sus complementos.
Tal vez trabajas en un equipo en el que los desarrolladores frontend no son todos expertos en JavaScript y están más acostumbrados a jQuery que a los estándares más nuevos. Si esto funciona, es genial.
Es posible que tampoco tengas el lujo de usar la última tecnología (como React o Vue) porque debes admitir navegadores antiguos, que tienen un conjunto de estándares más antiguos. En este caso, jQuery sigue siendo muy relevante para ti.
Tips para principiantes de JavaScript
Tal vez te puede interesar:
- Introducción a React
- Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
- Cómo cambiar el valor de un nodo DOM
- Cómo comprobar si un elemento DOM tiene una clase
¿Deberías usar o aprender jQuery en 2020?
Selección de elementos DOMEsperemos que se cargue el DOMAgregar o eliminar clases de un elemento DOMEliminar un elemento del DOMCambiar el contenido de un ele
programar
es
https://aprendeprogramando.es/static/images/programar-deberias-usar-o-aprender-jquery-en-2020ja-1825-0.jpg
2024-10-28
Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente