Seu programa começa a decidir
Até agora seu código era obediente: rodava linha por linha, de cima para baixo, sem reclamar. Os condicionais dão a ele algo novo: o poder de escolher. "Se isto acontecer, faça aquilo; senão, faça outra coisa." É o primeiro passo rumo a um programa que parece ter um pouco de juízo, porque reage diferente dependendo dos dados que recebe.
A estrutura if
const idade = 20;
if (idade >= 18) {
console.log("Você é maior de idade");
}
O que vai entre parênteses é uma condição: uma pergunta de sim ou não que é
avaliada como true ou false. Se a resposta for true, o bloco entre chaves
{ } é executado. Se for false, o JavaScript pula e segue em frente.
Adicionar um else
O else é o "e se não...". Ele é executado quando a condição não é
satisfeita, assim você cobre os dois caminhos possíveis:
const idade = 15;
if (idade >= 18) {
console.log("Você pode entrar");
} else {
console.log("Acesso negado");
}
Várias alternativas: else if
A vida raramente é preto no branco. Quando há mais de dois caminhos, você encadeia
else if. O JavaScript verifica as condições de cima para baixo e, assim que
encontra uma verdadeira, executa apenas essa e esquece o resto:
const nota = 7;
if (nota >= 9) {
console.log("Excelente");
} else if (nota >= 7) {
console.log("Bom");
} else if (nota >= 5) {
console.log("Aprovado");
} else {
console.log("Reprovado");
}
// Imprime "Bom"
⚠️ PEGADINHA CLÁSSICA: a ordem das condições. Como o JavaScript fica com a primeira que for verdadeira, se você colocasse
nota >= 5lá no topo, um 10 cairia em "Aprovado" e nunca chegaria a "Excelente"! Um 10 também é maior que 5, claro. Regra de ouro: coloque sempre as condições mais exigentes primeiro e desça a partir daí.
Exemplos
Você deixa entrar no show?
const idade = 16;
if (idade >= 18) {
console.log("Maior de idade");
} else {
console.log("Menor de idade");
}
Mensagem conforme a nota da prova
const nota = 8;
if (nota >= 9) {
console.log("Excelente");
} else if (nota >= 5) {
console.log("Aprovado");
} else {
console.log("Reprovado");
}