
JavaScript es un lenguaje de programación utilizado para añadir interactividad a las páginas web y desarrollar aplicaciones. Permite responder a acciones del usuario, modificar contenidos, trabajar con formularios y solicitar información sin recargar toda la página.
Aunque se conoce principalmente por su uso en navegadores, también puede ejecutarse en servidores y otros entornos. JavaScript y Java son lenguajes diferentes: la similitud del nombre no significa que utilicen el mismo código ni que uno sea una versión del otro.
Ejecutar código en el navegador permite realizar determinadas operaciones en el dispositivo del usuario, pero no elimina las descargas ni la comunicación con el servidor. El rendimiento depende del código, los recursos y el trabajo que realiza la aplicación.
Índice de contenidos
Características del lenguaje JavaScript
JavaScript es un lenguaje de alto nivel, dinámico y basado en prototipos. Admite distintos estilos de programación, como el imperativo, el funcional y el orientado a objetos. Las funciones pueden asignarse a variables, pasarse como argumentos y devolverse como resultados.
Su tipado es dinámico: una variable puede referirse a valores de distintos tipos durante la ejecución. Además, determinadas operaciones realizan conversiones implícitas, por lo que conviene distinguir entre números, cadenas de texto y otros valores al interpretar un resultado.
Junto con HTML y CSS, JavaScript forma parte de las tecnologías fundamentales de la web. HTML estructura el contenido, CSS define su presentación y JavaScript permite programar comportamientos. Los navegadores modernos incorporan motores para ejecutarlo sin instalar un plugin específico, aunque la compatibilidad de cada función depende de la versión.
Los motores pueden combinar interpretación y compilación durante la ejecución, conocida como compilación JIT. Por ello, describir JavaScript únicamente como un lenguaje interpretado no explica todas las estrategias utilizadas para ejecutar su código.
El lenguaje incluye objetos y funciones para trabajar con texto, arrays, fechas y expresiones regulares. Las API que ofrece el entorno amplían esas posibilidades: el DOM permite consultar y modificar el documento de una página, mientras que otras interfaces permiten realizar peticiones de red. Estas capacidades no pertenecen todas al núcleo del lenguaje ni están disponibles de la misma forma en cualquier entorno.
Origen y evolución de JavaScript
Brendan Eich creó JavaScript en 1995 mientras trabajaba en Netscape. Durante su desarrollo recibió los nombres Mocha y LiveScript antes de adoptar JavaScript, en un contexto comercial vinculado a la popularidad de Java. Su diseño incorporó influencias de lenguajes como Self y Scheme, además de una sintaxis familiar para programadores de la familia de C.
Su evolución incluye estos seis hitos y procesos:
- ECMAScript, desde 1997: la estandarización en Ecma International dio lugar a ECMA-262, la especificación del lenguaje ECMAScript en la que se basa JavaScript.
- AJAX, en la década de 2000: se popularizó la combinación de JavaScript y peticiones asíncronas para actualizar partes de una página sin recargarla completa. Aunque el nombre menciona XML, también pueden intercambiarse otros formatos, como JSON.
- Node.js, desde 2009: este entorno amplió la adopción de JavaScript en servidores y herramientas de desarrollo. No fue el primer uso del lenguaje fuera del navegador.
- Bibliotecas y frameworks de interfaces: herramientas como Angular, React y Vue facilitaron la organización de aplicaciones complejas. No son componentes obligatorios del lenguaje ni garantizan por sí solos mayor velocidad.
- ECMAScript 2015 o ES6: incorporó funciones como módulos, clases, promesas y las declaraciones let y const. Estas ampliaciones modificaron las posibilidades de organización y escritura del código.
- Ediciones posteriores: el estándar continúa evolucionando mediante nuevas ediciones. La publicación de una característica y su disponibilidad en los distintos motores no tienen por qué coincidir.
La referencia de JavaScript en MDN permite consultar el lenguaje y comprobar la compatibilidad de sus características, diferenciándolas de las interfaces proporcionadas por el navegador.
Para qué se utiliza JavaScript
En una web, JavaScript puede controlar menús, actualizar información, responder a clics o cambios en campos y realizar comprobaciones iniciales de formularios. Estas comprobaciones ayudan al usuario, pero no sustituyen la validación de los datos en el servidor.
Mediante técnicas de AJAX y API como Fetch puede enviar y recibir información sin recargar el documento completo. El acceso a recursos sigue sujeto a las reglas de seguridad del navegador y a los permisos del servicio; ejecutar un script no concede acceso directo a cualquier dato del servidor.
Fuera del navegador se utiliza para programar servidores con Node.js, desarrollar herramientas y construir aplicaciones de escritorio o móviles mediante entornos específicos. También puede emplearse en videojuegos, determinados documentos PDF y widgets, según las funciones que admita la plataforma.
El momento en que se descarga y ejecuta un script depende de cómo se incorpore a la página. No todo el código se interpreta a medida que llega el HTML: los scripts pueden diferirse, cargarse de forma asíncrona o utilizar módulos. Esta organización influye en cuándo están disponibles sus funciones y en cómo afectan a la presentación y respuesta de la página.
