Menu

¿Qué es JavaScript? El lenguaje de la web explicado

Qué es JavaScript, dónde se ejecuta, para qué sirve y en qué se diferencia de Java y TypeScript. Una introducción clara y sin rodeos para quien empieza.

JavaScript: el lenguaje de la web

JavaScript es el lenguaje de programación que se ejecuta dentro de los navegadores web. Cuando una página reacciona a un clic, valida un formulario, anima un menú o carga contenido nuevo sin recargarse, ahí está JavaScript trabajando. Todos los navegadores, en cualquier dispositivo, incluyen un motor de JavaScript integrado, y por eso es el único lenguaje que corre de forma nativa en la web.

Hoy también vive fuera del navegador. Con Node.js, Deno y Bun puedes usar JavaScript para servidores, herramientas de línea de comandos, scripts de build y APIs. El mismo lenguaje impulsa tanto el frontend como el backend, y esa es una de las grandes razones de su enorme popularidad.

Un pequeño aperitivo de cómo se ve el código JavaScript:

index.js
Output
Click Run to see the output here.

Tres líneas, tres ideas: declarar una variable, llamar a una función integrada e imprimir una plantilla de string. Verás estas tres cosas en cualquier trozo de código JavaScript real.

Dónde se ejecuta JavaScript

JavaScript, en sí mismo, es solo una especificación del lenguaje (conocida como ECMAScript). Para ejecutarlo de verdad hace falta un motor: un programa que lee tu código y lo ejecuta. Los dos con los que te vas a cruzar son:

  • Navegadores. Chrome y Edge usan V8. Firefox usa SpiderMonkey. Safari usa JavaScriptCore. Abre cualquier página, pulsa F12, pega código JavaScript en la pestaña Console y se ejecuta al momento.
  • Node.js. Saca V8 del navegador y le da acceso al sistema de archivos, la red y el sistema operativo. Eso es lo que hace posible usar JavaScript en el servidor.
// Ejecútalo en la consola del navegador:
document.title = "Nuevo título de la pestaña";

// Ejecútalo con Node.js:
// $ node script.js

El JavaScript del navegador puede manipular la página (el DOM), pero no tu sistema de archivos. El JavaScript de Node.js puede leer archivos y abrir sockets, pero no tiene una página que tocar. Mismo lenguaje, superpoderes distintos.

JavaScript para qué sirve

Respuesta corta: casi cualquier cosa que tenga que ver con la web. Respuesta larga, más o menos en el orden en que te las vas a ir encontrando:

  • Páginas web interactivas. Validación de formularios, menús desplegables, modales, búsqueda en tiempo real, arrastrar y soltar.
  • Aplicaciones de una sola página (SPA). Gmail, Figma, Notion, Linear — aplicaciones enteras que JavaScript renderiza y actualiza, normalmente con un framework como React, Vue o Svelte.
  • Servidores backend. APIs REST, endpoints GraphQL y servicios en tiempo real construidos con Node.js, Express, Fastify o NestJS.
  • Herramientas de build y desarrollo. Bundlers (Vite, esbuild, webpack), linters (ESLint), test runners (Vitest, Jest).
  • Apps multiplataforma. Aplicaciones de escritorio con Electron (VS Code, Slack, Discord) y apps móviles con React Native.

No hace falta que te sepas todo esto desde el primer día. Pero está bien saber que existe, para que la frase "es solo JavaScript" no te suene a limitación.

Cómo funciona JavaScript por dentro

Un modelo mental muy simplificado: tú escribes el código fuente, el motor lo parsea y lo convierte en una representación interna, y luego lo ejecuta. Los motores modernos usan compilación JIT (just-in-time): empiezan interpretando rápido y, conforme el programa corre, van optimizando las rutas de código más usadas compilándolas a código máquina.

JavaScript no se compila a un binario antes de publicarlo. Le pasas el código fuente al navegador (o a Node) y el motor se encarga del resto:

index.js
Output
Click Run to see the output here.

Pega eso en la consola del navegador o guárdalo como greet.js y ejecuta node greet.js — el resultado es el mismo. Sin paso de compilación, sin configuración de build, sin nada que instalar para un código tan sencillo.

Diferencia entre Java y JavaScript

Suenan parecido, pero no tienen nada que ver. A JavaScript le pusieron ese nombre en 1995 para aprovechar el tirón que tenía Java en aquel momento — una decisión de marketing que lleva décadas confundiendo a quien empieza.

JavaScriptJava
TipadoDinámicoEstático
Se ejecuta enNavegadores, Node.jsJVM
ParadigmaMultiparadigma, basado en prototiposPOO basada en clases
CompilaciónJIT, sin paso de buildSe compila antes a bytecode

Si alguien te suelta aquello de "aprendí Java, así que ya sé JavaScript"... no, no sabe. Trátalos como dos lenguajes distintos que por casualidad comparten cuatro letras.

JavaScript vs TypeScript

TypeScript es JavaScript con un sistema de tipos encima. Escribes el código con anotaciones de tipo, el compilador de TypeScript las revisa, y lo que sale al final es JavaScript normal y corriente que funciona en cualquier sitio donde funcione JavaScript.

// JavaScript — types are implicit:
function add(a, b) {
    return a + b;
}

// TypeScript — types are explicit:
function add(a: number, b: number): number {
    return a + b;
}

Todo archivo JavaScript válido es también un archivo TypeScript válido, así que TypeScript no es un competidor: es un superconjunto. Hoy en día la mayoría de las bases de código grandes usan TypeScript, pero lo correcto es aprender JavaScript primero. No puedes entender qué hace TypeScript si antes no sabes sobre qué está añadiendo tipos.

Un poco de historia para entender sus rarezas

JavaScript lo escribió Brendan Eich en Netscape en 1995, y lo hizo en diez días. Esa anécdota importa, porque varias de las asperezas del lenguaje (la igualdad débil, la inserción automática de punto y coma, typeof null === "object") vienen de decisiones tomadas con una presión de tiempo brutal, y luego quedaron congeladas para no romper la compatibilidad hacia atrás de la web.

El lenguaje se estandariza bajo el nombre de ECMAScript, y cada año sale una versión nueva (ES2015 fue la más importante: trajo let, const, arrow functions, clases y módulos). Cuando alguien habla de "ES6" o de "JavaScript moderno", se refiere básicamente al conjunto de funcionalidades de 2015 en adelante, que hoy está soportado en todas partes.

Escribir JavaScript moderno es genuinamente agradable. Las partes antiguas siguen ahí, pero con buenas costumbres (las iremos viendo a lo largo del curso) puedes esquivarlas casi por completo.

Qué te llevas de aquí

  • JavaScript se ejecuta en todos los navegadores y, gracias a Node.js, también en servidores.
  • Sirve para casi todo lo que toca la web: interfaces, backend, herramientas de desarrollo e incluso apps de escritorio y móviles.
  • No es lo mismo que Java. TypeScript es un superconjunto que le añade tipado estático.
  • El lenguaje arrastra algunas rarezas históricas; lo que vas a escribir en la práctica es JavaScript moderno (ES2015+).

Siguiente paso: ejecutar JavaScript

Suficiente teoría, toca ejecutar código. En el siguiente documento veremos los tres sitios donde vas a correr JavaScript cuando estás empezando: la consola del navegador, un archivo HTML y Node.js desde la línea de comandos.

Preguntas frecuentes

¿Qué es JavaScript en palabras sencillas?

JavaScript es un lenguaje de programación que se ejecuta dentro del navegador y también en el servidor (gracias a Node.js). Es lo que hace que una página web sea interactiva: responde a los clics, actualiza el contenido sin recargar la página y pide datos a APIs. Además, es el único lenguaje que corre de forma nativa en todos los navegadores.

¿Para qué se usa JavaScript?

Para prácticamente todo: desde pequeñas interacciones de UI (menús desplegables, validación de formularios) hasta aplicaciones web completas (Gmail, Figma, Notion), servidores backend (Node.js, Deno), apps móviles (React Native), aplicaciones de escritorio (VS Code está hecho con Electron) y herramientas de build. Si algo corre en un navegador o habla con la web, seguramente hay JavaScript de por medio.

¿JavaScript y Java son lo mismo?

No, son lenguajes sin ninguna relación más allá del nombre parecido, que nació por razones de marketing allá por los 90. Java tiene tipado estático, está basado en clases y corre sobre la JVM. JavaScript tiene tipado dinámico, corre en navegadores y en Node, y tiene un diseño completamente distinto. Lo único que comparten de verdad son las primeras cuatro letras.

¿Cuál es la diferencia entre JavaScript y TypeScript?

TypeScript es JavaScript con un sistema de tipos añadido. Escribes el código con anotaciones de tipo, un compilador las verifica y la salida es JavaScript normal y corriente. Cualquier archivo válido de JavaScript también es válido en TypeScript. No necesitas TypeScript para aprender JavaScript, pero hoy en día la mayoría de los proyectos grandes lo usan.

Aprende a programar con Coddy

COMENZAR