Carregando...

If e else

Os operadores lógicos deram-lhe um sim/não. A pergunta seguinte: quais linhas devem correr? Se sim, um bloco; se não, outro. Essa escolha é if / else / else if. Já sabe construir um boolean; aqui usa-o para escolher o caminho.

O que faz o if?

O if olha para a condição entre parênteses. Se o valor for truthy, o JavaScript executa o bloco entre chavetas logo a seguir. Se for falsy, esse bloco é ignorado. O else é o caminho de recurso quando o if falhou. O else if acrescenta outra verificação antes do else final.

As palavras-chave num relance

📊 Peças quotidianas de if / else

Palavra-chave Leitura quotidiana Uso típico
if se isto passar, corre este bloco primeira verificação
else if senão, se esta outra verificação passar… caminhos intermédios
else caso contrário, corre isto último recurso

Mantenha a condição clara: uma comparação (age >= 18), uma junção lógica (age >= 18 && score >= 60) ou uma variável boolean nítida. O trabalho desse caminho vai dentro de { … }.

if simples

javascript
let age = 20;
if (age >= 18) {
console.log("adult");
}
console.log("done");

if só corre quando a verificação passa

Aqui age é 20, logo age >= 18 é true e a Consola imprime adult e depois done. Passe age para 16 e fica só done — o bloco if foi saltado.

A linha após o } de fecho corre normalmente sempre (salvo se sair depois da função). O if não para o programa inteiro; só decide se o seu próprio bloco corre.

if com else

javascript
let age = 16;
if (age >= 18) {
console.log("adult");
} else {
console.log("under 18");
}

else cobre o outro caminho

Agora a verificação falha; o JavaScript salta o primeiro bloco e executa o else. Vê under 18. Num par simples if / else corre exactamente um ramo — nunca os dois, nunca nenhum.

cadeia else if

javascript
let score = 75;
if (score >= 90) {
console.log("A");
} else if (score >= 60) {
console.log("pass");
} else {
console.log("retry");
}

else if acrescenta caminhos intermédios

score é 75. A primeira verificação (>= 90) falha. A segunda (>= 60) passa — vê pass e o else final é ignorado. A ordem importa: coloque primeiro as faixas mais estritas quando se sobrepõem.

Três if separados poderiam correr mais do que um bloco. O else if mantém os caminhos exclusivos — após a primeira correspondência, a cadeia para.

Condição com comparação e lógica

javascript
let age = 20;
let score = 75;
if (age >= 18 && score >= 60) {
console.log("allowed");
} else {
console.log("blocked");
}
let ready = false;
if (!ready) {
console.log("wait");
}

Ponha verificações reais nos parênteses

A condição pode ser uma comparação, uma expressão lógica ou um boolean invertido. age >= 18 && score >= 60 é true — vê allowed. !ready também é true — vê wait. Construa primeiro o sim/não; depois deixe o if escolher o ramo.

Guardar mensagem do ramo

javascript
let age = 20;
let label;
if (age >= 18) {
label = "adult";
} else {
label = "under 18";
}
console.log(label);

Dê nome ao resultado do ramo

Por vezes quer uma string (ou número) da escolha, não só um console.log. Atribua label em cada ramo e use-o uma vez depois. Aqui label fica "adult".

Mostre o caminho escolhido na página

Crie uma mensagem curta com if / else e escreva-a na página.

Ramo de página com if else

html
<!DOCTYPE html>
<html>
<head>
<title>If else — page branch</title>
</head>
<body>
<p id="out">…</p>
<script>
let age = 20;
let msg;
if (age >= 18) {
msg = "adult";
} else {
msg = "under 18";
}
let box = document.getElementById("out");
box.textContent = "status=" + msg;
</script>
</body>
</html>

age é 20, a página mostra status=adult. Ponha age a 16, actualize e deverá ver status=under 18. A lição seguinte (switch) escolhe entre vários valores fixos; para portas quotidianas de sim/não, if / else continua a ser a ferramenta.

Experimente você

  1. Registe "ok" dentro de if (true) e confirme a impressão.
  2. Use if / else com let age = 16 e imprima "adult" ou "under 18".
  3. Monte uma cadeia else if para faixas de score: A (≥ 90), pass (≥ 60), senão retry.
  4. Combine age >= 18 && score >= 60 numa condição if.
  5. Guarde uma string label com if / else e registe-a uma vez.
  6. Na demo HTML mude só age, actualize e leia o novo texto status=.

Erros comuns

  • Esquecer as chavetas { } à volta do corpo do ramo
  • Escrever if (age = 18) com um só = (atribuição) em vez de comparação
  • Colocar else sem um if correspondente por cima
  • Vários if soltos quando queria caminhos exclusivos else if
  • Verificar faixas pela ordem errada (ex.: >= 60 antes de >= 90)

Resumo

  • if executa um bloco quando a condição é truthy
  • else corre quando esse if falhou
  • else if acrescenta mais caminhos intermédios exclusivos
  • As condições são normalmente comparações ou expressões lógicas
  • Mantenha cada ramo entre chavetas; guarde um rótulo se precisar do resultado depois
  • Seguinte: switch — escolher entre vários valores fixos

🧠 Teste Seu Conhecimento

Pronto para Começar

Teste Seu Conhecimento

Desafie-se com este questionário interativo e veja o quão bem você entende o tópico

❓
8
Perguntas
🎯
70%
Para Passar
♾️
∞
Tempo
🔄
∞
Tentativas

📝 Instruções

  • Leia cada pergunta cuidadosamente
  • Selecione a melhor resposta para cada pergunta
  • Você pode refazer o quiz quantas vezes quiser
  • Seu progresso será mostrado no topo