Módulo 1 de 8
Variáveis, Tipos de Dados e Operadores
Ao final deste módulo, você será capaz de:
- Explicar o que é uma variável e criar variáveis com
leteconst; - Identificar os principais tipos de dados do JavaScript;
- Usar operadores aritméticos, de atribuição, de comparação e lógicos;
- Entender a diferença entre
==e===.
1. O que é uma variável?
Pense em uma variável como uma caixa com etiqueta: você guarda um valor dentro dela e usa o nome
da etiqueta para acessar (ou trocar) esse valor depois. Em JavaScript, criamos variáveis com as palavras-chave
let e const.
let nome = "Maria"; // pode ser alterada depois
const anoAtual = 2026; // não pode ser reatribuída
nome = "João"; // ok, "let" permite mudar o valor
// anoAtual = 2027; // erro! "const" não permite mudar
const por padrão. Só use let quando você sabe que o valor
vai mudar (como um contador). Evite var — é a forma antiga e tem comportamentos confusos que o
let/const resolveram.
2. Tipos de dados
Todo valor em JavaScript tem um tipo. Os tipos "primitivos" mais comuns são:
string— texto, sempre entre aspas:"olá",'oi',`ei`number— números, inteiros ou decimais:10,3.14boolean— verdadeiro ou falso:true,falseundefined— variável declarada mas sem valor aindanull— "nenhum valor", definido de propósito por quem escreveu o código
Use o operador typeof para descobrir o tipo de um valor: typeof 10 retorna
"number".
3. Operadores aritméticos e de atribuição
| Operador | Significado | Exemplo |
|---|---|---|
+ | soma (ou concatena texto) | 2 + 3 // 5 |
- | subtração | 5 - 2 // 3 |
* | multiplicação | 4 * 2 // 8 |
/ | divisão | 10 / 4 // 2.5 |
% | resto da divisão (módulo) | 10 % 3 // 1 |
** | potência | 2 ** 3 // 8 |
Os operadores de atribuição combinam uma operação com o =: x += 1 é o mesmo que
x = x + 1. Também existem -=, *=, /=.
4. Comparação: a armadilha do == vs ===
== compara valores convertendo os tipos automaticamente, o que gera resultados
confusos. === compara valor e tipo, sem conversão — por isso é sempre a
escolha recomendada.
console.log("10" == 10); // true (compara só o valor, converte o tipo)
console.log("10" === 10); // false (tipos diferentes: string vs number)
console.log(10 === 10); // true
=== e !== no seu código. Isso evita bugs
difíceis de encontrar.
5. Operadores lógicos
&&— "E": verdadeiro só se os dois lados forem verdadeiros||— "OU": verdadeiro se pelo menos um lado for verdadeiro!— "NÃO": inverte o valor booleano
let idade = 20;
console.log(idade >= 18 && idade <= 65); // true: maior de idade e não idoso
console.log(idade < 18 || idade > 65); // false
6. Template literals: concatenando texto de forma fácil
Em vez de concatenar com +, use crases (`) e ${...} para
inserir variáveis dentro do texto:
let nome = "Ana";
let idade = 22;
// forma antiga
console.log("Olá, " + nome + "! Você tem " + idade + " anos.");
// template literal (recomendado)
console.log(`Olá, ${nome}! Você tem ${idade} anos.`);