Command Palette

Search for a command to run...

¿Qué es JavaScript?

JavaScript es el lenguaje de programación fundamental de la web. Es interpretado, orientado a objetos, de tipado débil y dinámico, permitiendo crear interactividad compleja.

Lectura: 8 min
Nivel: Principiante

TL;DR - Resumen rápido

  • Es el único lenguaje de programación nativo de los navegadores web.
  • Es un lenguaje interpretado (usando compilación JIT moderna).
  • Permite modificar el HTML y CSS dinámicamente (DOM).
  • Se ejecuta tanto en el cliente (navegador) como en el servidor (Node.js).

JavaScript (comúnmente abreviado como JS) es un lenguaje ligero e interpretado, conocido principalmente como el lenguaje de scripting para páginas web. Aunque originalmente fue diseñado para ejecutarse en el navegador y manipular los elementos de una página, su poder ha crecido tanto que hoy se utiliza en servidores (Node.js), aplicaciones móviles (React Native), desarrollo de videojuegos y mucho más.

Piezas Clave en el Navegador

Cuando JavaScript opera dentro de un navegador web, no trabaja solo. Se apoya en tres componentes fundamentales que interactúan entre sí:

  • <strong>ECMAScript (ES):</strong> Es el estándar oficial que define el lenguaje. Piensa en él como el “manual de gramática” de JavaScript. Cada año se publican nuevas versiones (ES6, ES2022, etc.) que añaden funcionalidades y sintaxis moderna.
  • <strong>DOM (Document Object Model):</strong> Es una representación en forma de árbol de la estructura HTML de la página. JavaScript utiliza el DOM como un puente para leer, añadir, modificar o eliminar elementos de la web en tiempo real. Si cambias un texto al hacer clic, estás manipulando el DOM.
  • <strong>BOM (Browser Object Model):</strong> Proporciona a JavaScript la capacidad de interactuar con el navegador mismo, fuera del contenido de la página. Incluye el historial, la barra de direcciones (URL), el tamaño de la ventana o la geolocalización.

Más allá de solo mejorar la funcionalidad de una página, JavaScript permite crear experiencias de usuario (UX) ricas e inmersivas. Desde validaciones instantáneas hasta aplicaciones de una sola página (SPA) completas como Gmail o Spotify.

Con la llegada de librerías y frameworks modernos como React, Angular y Vue.js, el desarrollo web ha alcanzado un nivel de sofisticación enorme, permitiendo construir interfaces modulares y escalables.

¿Cómo funciona JavaScript?

Cuando visitas una página web, el proceso de renderizado ocurre en pasos secuenciales. El navegador descarga y analiza el HTML y el CSS para pintar la estructura y el estilo visual. Luego, entra en juego el motor de JavaScript.

  1. <strong>Parsing (Análisis):</strong> El navegador lee el código JS y verifica su sintaxis.
  2. <strong>Compilación (JIT):</strong> Convierte el código legible por humanos a código máquina (bytecode).
  3. <strong>Ejecución:</strong> El código procesado se ejecuta, activando la lógica, eventos y manipulaciones del DOM.

Motores JavaScript (Engines)

El motor de JavaScript es el corazón que late dentro del navegador. Es un programa informático que ejecuta el código JS. Cada navegador principal tiene su propio motor optimizado:

  • <strong>V8:</strong> Usado en Google Chrome, Edge, Brave y Node.js.
  • <strong>SpiderMonkey:</strong> Usado en Mozilla Firefox.
  • <strong>JavaScriptCore:</strong> Usado en Safari.

Aunque se dice que JS es "interpretado", los motores modernos utilizan una técnica llamada JIT (Just-In-Time) Compilation. Esto significa que el motor compila el código JavaScript a código máquina muy rápido, justo antes de ejecutarlo, monitoreando el código mientras corre para optimizarlo sobre la marcha. Esto le da a JS un rendimiento cercano a lenguajes compilados como C++ o Java en muchas tareas.

Características Técnicas

Para entender realmente JavaScript, hay dos conceptos técnicos que debes conocer, ya que definen su comportamiento:

1. Tipado Dinámico y Débil

En JavaScript, no necesitas especificar qué tipo de dato (número, texto, etc.) contendrá una variable. Además, una misma variable puede cambiar de tipo dinámicamente.

let caja = "Hola"; // Ahora es un String caja = 100; // Ahora es un Number (perfectamente válido)

2. Single Threaded (Hilo Único)

JavaScript se ejecuta en un solo hilo principal (Main Thread). Esto significa que solo puede hacer una cosa a la vez. ¿Cómo logra entonces hacer peticiones a servidores sin congelar la pantalla? Gracias al Event Loop y la asincronía.

Al ser de hilo único, si ejecutas una operación matemática muy pesada o un bucle infinito, bloquearás toda la página web y el usuario no podrá hacer clic en nada hasta que termine.

JavaScript: lado del cliente vs servidor

Esta dualidad ha hecho que JavaScript sea un lenguaje "Full-Stack". Puedes usar el mismo lenguaje para programar la interfaz visual y la lógica del servidor.

Lado del Cliente (Frontend):

  • <strong>Dónde se ejecuta:</strong> En el navegador del usuario.
  • <strong>Propósito:</strong> Interactividad, animaciones, validación de formularios, manipulación del DOM.
  • <strong>Ejemplos:</strong> React, Vue, manipular un canvas o detectar clics.

Lado del Servidor (Backend):

  • <strong>Dónde se ejecuta:</strong> En un servidor (físico o en la nube) usando Node.js, Deno o Bun.
  • <strong>Propósito:</strong> Acceso a bases de datos, sistemas de archivos, autenticación, lógica de negocio segura.
  • <strong>Ejemplos:</strong> Crear una API REST, guardar usuarios en MongoDB, procesar pagos.

Breve Historia

JavaScript fue creado en solo 10 días en 1995 por Brendan Eich en Netscape. Inicialmente llamado Mocha, luego LiveScript, y finalmente renombrado a “JavaScript” como una estrategia de marketing para aprovechar la popularidad de Java en ese momento (aunque técnicamente no tienen relación directa, más allá de alguna similitud en sintaxis).

Para evitar fragmentación entre navegadores, el lenguaje fue estandarizado por ECMA International, dando lugar a la especificación oficial ECMAScript. Un hito clave fue el lanzamiento de ES6 (ES2015), que modernizó el lenguaje masivamente, añadiendo clases, módulos, y variables let/const.

Primer vistazo del lenguaje

A continuación verás ejemplos básicos de sintaxis. No te preocupes si no entiendes todo, profundizaremos en cada concepto en los siguientes artículos.

Declarar variables

Usamos let para variables que pueden cambiar y const para valores constantes.

variables.js
Loading code...

Funciones

Bloques de código reutilizables. La sintaxis moderna usa "Arrow Functions" (flecha).

funciones.js
Loading code...

Arrays y Bucles

Manejo de listas de datos y ejecución repetitiva de código.

arrays.js
Loading code...

Conclusión

JavaScript ha evolucionado de ser un simple script para validar formularios a ser la columna vertebral de la web moderna. Su capacidad para ejecutarse en cualquier dispositivo con un navegador, junto con un ecosistema de herramientas maduro, lo convierte en una habilidad profesional indispensable.

Resumen

Conceptos Clave:

  • JS es interpretado y dinámico.
  • Funciona gracias al motor JS del navegador (V8, etc).
  • Manipula el HTML a través del DOM.
  • ES6+ es el estándar moderno que usamos hoy.

Siguiente paso:

  • Entender las variables (let vs const).
  • Aprender los tipos de datos primitivos.
  • Practicar la sintaxis básica en la consola.
  • Comprender la diferencia entre null y undefined.

A medida que la web sigue avanzando, JavaScript se consolida como la herramienta clave para crear las experiencias ricas, rápidas e interactivas que los usuarios esperan.