JavaScript (frequentemente abreviado como JS) é uma linguagem de
programação interpretada estruturada, de script em alto nível com
tipagem dinâmica fraca e multiparadigma (protótipos, orientado a objeto,
imperativo e, funcional). Juntamente com HTML e CSS, o JavaScript é uma
das três principais tecnologias da World Wide Web. JavaScript permite
páginas da Web interativas e, portanto, é uma parte essencial dos
aplicativos da web. A grande maioria dos sites usa, e todos os
principais navegadores têm um mecanismo JavaScript dedicado para
executá-lo.
É atualmente a principal linguagem para programação client-side
em navegadores web. É também bastante utilizada do lado do servidor
através de ambientes como o node.js.
Como uma linguagem multiparadigma, o JavaScript suporta estilos
de programação orientados a eventos, funcionais e imperativos (incluindo
orientado a objetos e prototype-based), apresentando recursos como
fechamentos (closures) e funções de alta ordem comumente indisponíveis
em linguagens populares como Java e C++. Possui APIs para trabalhar com
texto, matrizes, datas, expressões regulares e o DOM, mas a linguagem em
si não inclui nenhuma E/S, como instalações de rede, armazenamento ou
gráficos, contando com isso no ambiente host em que está embutido.
Foi originalmente implementada como parte dos navegadores web
para que scripts pudessem ser executados do lado do cliente e
interagissem com o usuário sem a necessidade deste script passar pelo
servidor, controlando o navegador, realizando comunicação assíncrona e
alterando o conteúdo do documento exibido, porém os mecanismos
JavaScript agora estão incorporados em muitos outros tipos de software
host, incluindo servidores em servidores e bancos de dados da Web e em
programas que não são da Web, como processadores de texto e PDF, e em
tempo de execução ambientes que disponibilizam JavaScript para escrever
aplicativos móveis e de desktop, incluindo widgets de área de trabalho.
Os termos Vanilla JavaScript e Vanilla JS se referem ao
JavaScript não estendido por qualquer estrutura ou biblioteca adicional.
Scripts escritos em Vanilla JS são códigos JavaScript simples.
Embora existam semelhanças entre JavaScript e Java, incluindo o
nome da linguagem, a sintaxe e as respectivas bibliotecas padrão, as
duas linguagens são distintas e diferem muito no design; JavaScript foi
influenciado por linguagens de programação como Self e Scheme.
É baseada em ECMAScript, padronizada pela Ecma international nas especificações ECMA-262 e ISO/IEC 16262.