Bem-vindo ao JavaScript!
O que é JavaScript, onde ele executa (navegador e Node.js), o que pode fazer e por que vale a pena aprender — uma introdução para iniciantes com exemplos.
JavaScript (frequentemente abreviado como JS) é a linguagem de programação da web. Começou como uma forma de tornar páginas web interativas e, hoje, alimenta tudo, desde botões e animações no navegador até servidores completos de back-end criados com Node.js. É uma das poucas linguagens que você pode usar do front-end ao back-end, o que é um dos grandes motivos de sua popularidade.
Esta página aborda o que é JavaScript, os dois ambientes em que ele executa (navegador e servidor), o que ele pode fazer e por que vale a pena aprendê-lo. Ao final, você entenderá onde JavaScript se encaixa e o que estudar a seguir.
O que é JavaScript?
JavaScript foi criado em 1995 por Brendan Eich na Netscape. Foi projetado para fazer páginas web responderem a ações do usuário — clicar em botões, preencher formulários ou exibir conteúdo sem recarregar a página.
A linguagem é padronizada sob uma especificação chamada ECMAScript. Cada edição anual adiciona funcionalidades; a edição de 2015 (comumente chamada de ES6) foi um grande salto que introduziu arrow functions, template literals, classes e módulos. Quando as pessoas falam em "JavaScript moderno", geralmente se referem ao ES6 e versões posteriores.
Alguns termos que descrevem JavaScript e que você verá com frequência:
- Alto nível — você não gerencia memória ou hardware diretamente.
- Tipagem dinâmica — uma variável pode armazenar qualquer tipo, e o tipo é verificado enquanto o programa executa, não antes.
- Interpretado (compilado JIT) — o código é executado sem uma etapa de compilação separada; o motor (como o V8 do Chrome) o compila em tempo real.
Apesar do nome, JavaScript não tem relação com Java. O nome foi uma decisão de marketing; as duas linguagens são completamente diferentes.
Aqui está um pequeno programa que imprime uma mensagem — este é o tipo de código que funciona da mesma forma em um console de navegador ou no Node.js:
const language = "JavaScript";
console.log(`Hello from ${language}!`);
// Output: Hello from JavaScript!O que o JavaScript Pode Fazer?
- Atualizar a página dinamicamente. JavaScript pode alterar o conteúdo de uma página web sem carregar uma nova. Isso é feito por meio do DOM (Document Object Model), a representação ativa da página no navegador.
- Reagir a eventos. Ele executa código em resposta a cliques, pressionamentos de tecla, rolagem, envio de formulários e muito mais.
- Comunicar-se com servidores de forma assíncrona. Pode buscar dados em segundo plano (por exemplo, verificar um nome de usuário enquanto o usuário continua digitando) sem travar a página.
- Armazenar e processar dados. Possui suporte nativo para arrays, objects, datas, matemática e processamento de texto.
Por exemplo, o código a seguir altera o título principal de uma página quando executado em um navegador:
// Runs in the browser: replace the text of the first <h1>
document.querySelector('h1').textContent = 'Hello, JavaScript!';Onde o JavaScript Executa
JavaScript precisa de um motor para ser executado. Os dois ambientes mais comuns são o navegador e o Node.js.
No Navegador
Todo navegador moderno (Chrome, Firefox, Safari, Edge) possui um motor JavaScript embutido. Foi aqui que o JavaScript começou, e é o que torna as páginas web interativas. Você adiciona JavaScript a uma página HTML com a tag <script>:
<!-- Load an external file -->
<script src="app.js"></script>
<!-- Or write code inline -->
<script>
console.log('This runs in the browser.');
</script>Você pode experimentar JavaScript agora mesmo sem escrever nenhum HTML: abra as ferramentas de desenvolvedor do seu navegador (pressione F12, ou Ctrl+Shift+I / Cmd+Option+I no Mac), clique na aba Console e digite o código diretamente.
Em um Servidor com Node.js
O Node.js permite executar JavaScript fora do navegador — em um servidor, no seu computador ou em ferramentas de build. Um servidor é um computador que responde a requisições, por exemplo, enviando de volta uma página web ou dados.
- Uma linguagem, front e back. Você pode escrever tanto a parte que os usuários veem quanto a lógica do servidor na mesma linguagem, o que simplifica o desenvolvimento.
- Eficiente para tarefas com muita E/S. Node.js lida com muitas conexões simultâneas de forma eficiente, o que o torna adequado para APIs e aplicativos em tempo real, como chat.
- Um enorme ecossistema de pacotes. Node.js vem com o npm, o maior registro de software do mundo, para que você possa utilizar ferramentas prontas em vez de escrever tudo do zero.
A diferença fundamental: o código no navegador pode acessar a página e o usuário (document, window), enquanto o código Node.js pode acessar o sistema (arquivos, servidores de rede), mas não tem página. A linguagem principal é a mesma nos dois ambientes.
Por que Aprender JavaScript?
- Está em todo lugar. Quase todos os sites usam JavaScript, portanto é uma habilidade fundamental para o desenvolvimento web.
- Abre portas para frameworks. Aprendê-lo permite usar ferramentas populares como React, Angular, Vue.js e Node.js para criar aplicativos maiores.
- Executa em quase qualquer lugar. Além da web, JavaScript cria aplicativos móveis (React Native) e aplicativos de desktop (Electron).
- Tem uma grande comunidade. Há muitos tutoriais, bibliotecas e ajuda disponíveis quando você travar.
- É muito demandado. Muitas vagas de emprego exigem habilidades em JavaScript.
- Oferece feedback rápido. Você pode ver seu código funcionando imediatamente no navegador, o que torna o aprendizado mais agradável.
Próximos Passos
Agora que você sabe o que é JavaScript e onde ele executa, a melhor forma de aprender é escrevendo código. Bons próximos capítulos:
- Variáveis em JavaScript — como armazenar e nomear dados.
- Tipos de Dados em JavaScript — os tipos de valores com os quais JavaScript trabalha.
- Funções em JavaScript — como agrupar código reutilizável.
- Comentários em JavaScript — como anotar seu código.
Seja para criar um site, escrever aplicativos de servidor ou simplesmente aprender a programar, JavaScript é um ótimo ponto de partida. Continue aprendendo conosco no W3Docs.