jQuery vs JavaScript – ¿Diferencias? ¿Cual es mejor?

Este artículo explicará qué son JavaScript y jQuery, en qué se diferencian y cómo y por qué deben usarse.

¿Qué es JavaScript?

JavaScript nació a mediados de la década de 1990 como un lenguaje de secuencias de comandos para agregar interactividad a las páginas web.

Con el tiempo, se ha convertido en un lenguaje de programación con todas las funciones, que incluso se puede ejecutar fuera del navegador web (más detalles sobre esto en nuestro artículo de Node.js).

También puede ver nuestro artículo que describe las diferencias entre JavaScript y Typescript aquí.

¿Qué es jQuery?

jQuery es una biblioteca escrita en JavaScript.

No es un lenguaje o implementación independiente, es solo un conjunto útil de herramientas escritas en JavaScript. Utiliza la misma sintaxis y se ejecuta en el mismo lugar; son solo un montón de herramientas adicionales que facilitan agregar elementos interactivos a su página, obtener y analizar datos y realizar lógica.

Específicamente, el propósito principal de jQuery es facilitar la interacción con HTML DOM.

También contiene herramientas útiles para recuperar datos de API y servicios web mediante REST y AJAX.

¿Qué es HTML DOM y cómo jQuery es útil con él?

Cuando se trabaja con páginas web HTML, el DOM (Document Object Model) es la estructura de árbol formada por las etiquetas HTML que contiene.

Cada elemento HTML está representado en el DOM:párrafos, tablas, imágenes, enlaces, todo.

jQuery le permite navegar y modificar fácilmente el DOM para acceder y modificar elementos de la página. Las funciones auxiliares proporcionadas por jQuery son mucho más fáciles de usar que intentar hacer lo mismo en JavaScript simple.

Por ejemplo, considere esta tabla HTML (llamada “peopleTable “) que contiene NombreEdad columnas:

<table id="peopleTable">
    <tr>
        <th>
            Name
        </th>
        <th>
            Age
        </th>
    </tr>
    <tr>
        <td>
            Bob
        </td>
        <td>
            34
        </td>
    </tr>
</table>

El DOM se puede atravesar fácilmente usando jQuery para seleccionar la tabla y agregar una fila:

$('#peopleTable tr:last').after('<tr><td>Tim</td><td>21</td></tr>');

Arriba, jQuery encuentra la peopleTable y luego encuentra el último fila en la tabla y agrega una nueva fila después (que contiene un registro de Tim).

Hacer esto en JavaScript es mucho más laborioso y más difícil de leer:

var newRow = document.getElementById('myTable').getElementsByTagName('tbody')[0].insertRow(document.getElementById('myTable').rows.length);
newRow.innerHTML = '<tr><td>Tim</td><td>21</td></tr>';

Entonces, ¿cuál debo usar?

jQuery no es intrínsecamente mejor que JavaScript:es solo una biblioteca que amplía la funcionalidad de JavaScript. Puede o no ser adecuado para sus necesidades, según el tipo de aplicación que esté creando.

JavaScript ha madurado mucho desde que jQuery tuvo su apogeo, por lo que muchos de los problemas resueltos por jQuery ahora ya no son problemas al escribir código JavaScript. Sin duda, vale la pena investigar si realmente necesita usarlo:depender de las grandes bibliotecas de ayuda no siempre es la mejor manera de escribir código ahora que JavaScript ha alcanzado la mayoría de edad.

Bibliotecas JavaScript más modernas como AngularReaccionar son alternativas a jQuery, que pueden funcionar mejor para usted, especialmente si crea aplicaciones móviles.

Lo que jQuery no adecuado para el trabajo del lado del servidor. Las aplicaciones que se ejecutan en Node.JS no tienen una página HTML para recorrer, por lo que el propósito de jQuery no es relevante dentro de las aplicaciones de Node.js.