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.