Como sabemos, HTML es un lenguaje para estructurar páginas web estáticas y, si bien el nuevo estándar HTML5 promete dotarlo de nuevas funcionalidades, generalmente requerimos de la ayuda de otros lenguajes para darles a nuestros sitios web características de interactividad. De estos lenguajes, el más utilizado es JavaScript.
JavaScript es un lenguaje de programación web interpretado. Es decir, los scripts (secuencias de comandos) se ejecutan desde el lado del cliente y no del servidor, sin necesidad de transformar el código fuente para su ejecución a través de un proceso de compilación (aunque también existe una implementación de JavaScript para aplicaciones del lado del servidor, pero de uso menos frecuente). Los scripts describen pequeñas acciones, efectos o eventos, que pueden acoplarse entre sí para generar programas de mayor tamaño.
Es común ver pequeños desarrollos en JavaScript en la forma de widgets: la mayoría de los relojes, contadores de visitas (con mapas dinámicos que indican su procedencia geográfica), minichats, visores de diapositivas y calculadoras que vemos adornando las barras laterales de muchos blogs están desarrollados en este lenguaje. Elementos tan sencillos como un indicador de la fecha o de nuestros datos de navegación (IP, sistema operativo, etc.), o efectos como mostrar una frase aleatoria cada vez que volvemos a cargar una página, también son típicamente realizados en JavaScript. Es común su uso para efectos visuales como cambiar el tamaño de elementos de página o realizar transiciones animadas entre gráficos. La reproducción de audio y video, o las interacciones entre la página y la webcam o el micrófono del usuario, también son terrenos de acción de JavaScript. Entre los desarrollos de mayor importancia, son habituales las salas de chat, aunque hay quienes llegan a desarrollar videojuegos enteros.
JavaScript es soportado por casi todas las plataformas (aunque a veces pueda ser necesario instalar plugins adicionales) y no se requiere de licencias para su utilización.