JavaScript é a única linguagem de programação que roda nativamente em todo browser de internet do mundo. Todo site que você usa tem JavaScript por baixo do capô — do simples menu que abre e fecha até o feed do Instagram ou o editor do Google Docs. Para quem quer trabalhar com web, aprender JavaScript é obrigatório. E a melhor parte: você não precisa instalar nada para começar — todo browser tem um console JavaScript embutido.
Abrindo o console do browser
Pressione F12 (ou Ctrl+Shift+I no Chrome/Firefox) para abrir as ferramentas de desenvolvedor e clique na aba “Console”. Aqui você pode digitar e executar JavaScript instantaneamente. 2 + 2 retorna 4. console.log("olá") imprime “olá”. É o melhor playground para experimentar enquanto aprende — sem criar arquivo, sem abrir terminal, sem instalar nada.
Declarando variáveis: var, let e const
JavaScript tem três formas de declarar variáveis, e saber a diferença é crucial. var é a forma antiga, com comportamentos confusos de escopo — evite. let é para variáveis que mudam: let contador = 0; contador = contador + 1;. const é para valores que não mudam: const PI = 3.14159;. A regra prática: use const por padrão; só troque para let quando souber que o valor vai mudar. Nunca use var em código moderno.
Uma pegadinha: const com objetos e arrays não significa que o conteúdo é imutável, apenas que a variável não pode ser reatribuída para outro objeto. const frutas = ["maçã"]; permite frutas.push("banana") (modifica o array), mas não permite frutas = ["laranja"] (reatribuição).
Tipos de dados em JavaScript
JavaScript tem tipos primitivos: number (todos os números, inteiros e decimais unificados — ao contrário de Python), string (texto entre aspas simples, duplas ou backticks), boolean (true ou false, minúsculas), undefined (variável declarada mas sem valor), null (ausência intencional de valor) e bigint para inteiros muito grandes.
Template literals (backtick strings) são uma das melhores features modernas do JS: em vez de concatenar com +, você interpolaa diretamente: `Olá, ${nome}! Você tem ${idade} anos.`. O uso de backtick (`) permite múltiplas linhas na string e inserção de expressões JS entre ${}. Uma vez que você usa template literals, a concatenação com + parece arcaica.
Coerção de tipos: a mina de bugs do JavaScript
JavaScript faz conversão automática de tipos em operações — o que é tanto uma conveniência quanto uma fonte de bugs confusos. "5" + 3 resulta em "53" (concatenação de string), mas "5" - 3 resulta em 2 (conversão para número). Esses comportamentos surpreendem iniciantes. Use sempre comparação estrita com === (compara valor E tipo) em vez de == (compara valor com conversão). 5 == "5" retorna true; 5 === "5" retorna false. Na dúvida, sempre use ===.
Estruturas de controle
If/else funciona como em qualquer linguagem: if (condicao) { ... } else { ... }. O operador ternário é uma forma compacta para condições simples: const resultado = saldo >= 0 ? "positivo" : "negativo". O loop for clássico tem três partes no parênteses: inicialização, condição e incremento. O for...of iterações sobre arrays: for (const item of lista) { ... }. O forEach é um método de array que aceita uma função: lista.forEach(item => console.log(item)).
Switch/case é útil quando você tem muitas condições baseadas no valor de uma única variável — mais legível que uma cadeia longa de if/else if. Lembre de colocar break ao final de cada case, caso contrário o JavaScript continuará executando os casos seguintes (esse comportamento peculiar chama-se “fall-through”). JavaScript moderno é uma linguagem rica e expressiva — dominar suas bases abre as portas para React, Node.js, aplicações mobile e praticamente tudo na web moderna.
Tem um projeto em mente?
Somos especialistas em transformar ideias em produtos digitais. Apps, sites, automações e IA — vamos construir juntos.