Biblioteca de JavaScript
# Biblioteca de JavaScript

Una biblioteca de JavaScript es una biblioteca de código pre-escrito en JavaScript que permite un desarrollo más fácil de aplicaciones basadas en JavaScript, especialmente AJAX y otras tecnologías centradas en la web.

## Historia

Si bien JavaScript, desarrollado inicialmente por Netscape (y más tarde Mozilla), siempre ha estado presente en muchos sitios de la Web, ganó terreno especialmente con el auge de la era Web 2.0, en la que JavaScript se utilizó cada vez más para desarrollar interfaces de usuario de aplicaciones, tanto basadas en web como basadas en escritorio.

JavaScript también se combinó con CSS para crear páginas web dinámicas, que también se popularizaron como una alternativa más eficiente y accesible que las webs basadas en Flash.

## Bibliotecas

Dado el uso cada vez a mayor escala de JavaScript, surgió la necesidad de medios que facilitasen la creación de tales interfaces dinámicas. En consecuencia, se desarrollaron bibliotecas de JavaScript y bibliotecas de controles JavaScript, lo que permitió a los desarrolladores concentrarse en usos más creativos de AJAX. Esto ha llevado a otras compañías y grupos, como Microsoft y Yahoo!, a desarrollar sus propias bibliotecas de interfaz de usuario basadas en JavaScript, que luego utilizan en sus propias aplicaciones web.

Algunas bibliotecas de JavaScript permiten una integración más sencilla de JavaScript con otras tecnologías de desarrollo web, como CSS, PHP, Ruby y Java. Muchas bibliotecas incluyen código para detectar diferencias entre entornos en tiempo de ejecución y permiten a las aplicaciones evitar tales incoherencias. Entre las más conocidas que proporcionan ambas funcionalidades, están jQuery, Vue o React.

La gran mayoría de las bibliotecas de JavaScript más populares se publican bajo licencias permisivas o de "izquierdo de autor" (copyleft) para garantizar su distribución, uso y modificación sin necesidad de permiso explícito.

## Marcos de trabajo

Algunas bibliotecas de JavaScript se clasifican como marcos de trabajo (frameworks) dado que proporcionan arquitecturas básicas de aplicación que no se encuentran en bibliotecas de JavaScript generales.

