Page cover

js7.4.1 - Estruturas condicionais

🚀 Aprofundando nas Estruturas Condicionais

🚀 Aprofundando nas Estruturas Condicionais

Agora que vocĂȘ jĂĄ entende o bĂĄsico de if, else if e else, vamos explorar outras formas de tomar decisĂ”es no JavaScript e entender melhor como essas estruturas funcionam por dentro. 🧠✹


🎯 switch case – Quando hĂĄ muitas opçÔes

Às vezes, usamos muitos else if seguidos. O cĂłdigo pode ficar confuso... đŸ˜”â€đŸ’« É aĂ­ que o switch entra para salvar o dia! 🩾

đŸ§Ș Exemplo: Escolher uma bebida

let bebida = "suco";

switch (bebida) {
  case "café":
    console.log("VocĂȘ escolheu cafĂ© ☕");
    break;
  case "chĂĄ":
    console.log("VocĂȘ escolheu chĂĄ đŸ”");
    break;
  case "suco":
    console.log("VocĂȘ escolheu suco 🧃");
    break;
  default:
    console.log("Escolha inválida ❌");
}

đŸ§© O que estĂĄ acontecendo aqui:

  • O switch compara bebidacom cada case.

  • Se encontrar uma combinação, executa o cĂłdigo daquele bloco.

  • O break serve para parar a execução quando uma opção jĂĄ foi atendida.

  • O default Ă© como o else: Ă© usado quando nenhuma opção bate.

📝 Use switch quando vocĂȘ tiver muitas comparaçÔes de igualdade com o mesmo valor.


⚡ Operador Ternário – Tudo em uma linha!

Quer fazer uma verificação råpida? Use o operador ternårio!

📌 Forma:

✅ Exemplo:

💡 Ideal para decisĂ”es simples. Mas cuidado: nĂŁo use para lĂłgica complexa.


⚠ Observação importante: ParĂȘnteses sĂŁo obrigatĂłrios!

Quando usamos if, else if ou while, a condição sempre deve estar entre parĂȘnteses ( ).

❌ Exemplo com erro:

đŸ’„ Isso nĂŁo vai funcionar! O JavaScript vai mostrar um erro como:

Uncaught SyntaxError: Unexpected identifier

Isso porque a sintaxe correta exige parĂȘnteses para o JavaScript saber onde começa e termina a condição.

✅ Forma correta:

💡 Dica de memĂłria: Pense nos parĂȘnteses como os "ouvidos" da condição. O if sĂł escuta o que estĂĄ dentro deles! 👂😉


🧠 Como o computador entende as condiçÔes?

Quando vocĂȘ escreve:

O computador avalia a condição usando valores booleanos: true (verdadeiro) ou false (falso). Só quando a condição for true, o bloco dentro do if serå executado.


đŸ§© Observação: Como as condiçÔes sĂŁo "avaliadas"?

Toda condição no if, while, ou outras estruturas parecidas, sempre resulta em true ou false. Isso vale tanto para condiçÔes simples quanto para condiçÔes compostas com operadores.

🔍 Exemplo 1: Condição simples

📱 Aqui o computador estĂĄ perguntando: “20 Ă© maior ou igual a 18?” A resposta Ă© true ✅


🔗 Exemplo 2: Condição composta com && (E)

O computador avalia ambas as condiçÔes:

  • idade ≄ 18? ✅

  • temRG? ✅

Como ambas sĂŁo verdadeiras, o resultado da condição completa Ă© true ✅


🔀 Exemplo 3: Condição composta com || (OU)

Basta uma das condiçÔes ser verdadeira para que o resultado seja true. Aqui: RG ❌ mas passaporte ✅ → entĂŁo a condição geral Ă© verdadeira.


🧠 Lembre-se:

ExpressĂŁo
Resultado

true && true

✅ true

true && false

❌ false

false && false

❌ false

true || true

✅true

true || false

✅true

false || false

❌ false

!true

❌ false

!(idade >= 18) → idade = 20

❌ false

đŸ§Ș Isso vale mesmo que a condição seja mais longa:

💡 Dica: Para testar condiçÔes, vocĂȘ pode usar o console.log() e ver se o resultado Ă© true ou false. É uma Ăłtima forma de praticar! 🎯


⚠ RedundĂąncia: evite repetir o que nĂŁo precisa!

Veja este exemplo:

🔁 Redundante! isAluno jĂĄ Ă© um valor booleano. O ideal seria:

đŸ§Œ Deixar o cĂłdigo limpo e direto Ă© sinal de boas prĂĄticas!


🔍 Quando usar qual estrutura?

Situação
Estrutura ideal

Verificar uma ou duas condiçÔes simples

if / else

Verificar vĂĄrias possibilidades do mesmo valor

switch

Fazer decisĂŁo rĂĄpida em uma linha

Operador ternĂĄrio ? :

đŸš« Evite switch para verificaçÔes com <, > ou !== → nesses casos use if.


🧬 Observação: CondiçÔes dentro de condiçÔes? Sim! Isso se chama aninhamento

Às vezes, uma decisĂŁo depende de outra decisĂŁo anterior. Nesse caso, usamos estruturas condicionais aninhadas, ou seja, um if dentro de outro if. đŸȘș

đŸ€” Mas o que isso quer dizer?

É como perguntar:

"Se o aluno passou, ele tirou nota boa ou sĂł o suficiente?"

🔍 Exemplo prático:


🧠 Como o computador lĂȘ isso:

  1. Verifica se nota >= 7

  2. Se for verdadeiro, entra no primeiro if

  3. Dentro dele, verifica outra condição (nota >= 9)

  4. Se essa também for verdadeira, imprime a mensagem extra


⚠ Cuidado com a bagunça!

Muitos if dentro de if podem deixar seu cĂłdigo difĂ­cil de entender đŸ˜”â€đŸ’« Olha sĂł este exemplo nĂŁo recomendado:

✅ Melhorar com lógica clara:

Use operadores lĂłgicos && e comentĂĄrios para clarear a leitura:

💡 Dica de programador esperto: Sempre que vocĂȘ aninhar condiçÔes, se pergunte se nĂŁo daria pra simplificar com operadores lĂłgicos ou funçÔes auxiliares.


đŸ’„ Erros comuns para evitar

  1. ❌ Esquecer o break no switch Isso faz o código "cair" no próximo case.

  1. ❌ Usar = no lugar de == = Ă© para atribuir, == Ă© para comparar.

  1. ❌ Confundir == com === Sempre que possível, prefira ===, pois compara valor e tipo.

  1. ❌ Colocar muita lógica em um ternário Fica difícil de ler! Use if para casos mais complexos.


đŸ› ïž Boas prĂĄticas com exemplos reais

✅ Bom exemplo: Código claro e direto

❌ Mau exemplo: Ternário confuso

🧠 Parece legal, mas fica difícil de entender! Prefira usar if aqui.


đŸ’Ș O poder das estruturas condicionais

Com elas, conseguimos:

  • Criar sistemas de login 🔐

  • Definir regras de jogos 🎼

  • Controlar dispositivos inteligentes đŸ€–

  • Personalizar pĂĄginas e apps de acordo com o usuĂĄrio 🌐

Elas sĂŁo a base da lĂłgica de qualquer sistema! Dominar bem as estruturas condicionais Ă© um superpoder no mundo da programação! đŸŠžâ€â™€ïžđŸŠžâ€â™‚ïž


đŸŽČ Desafio!

Crie um programa que receba o dia da semana (ex: "segunda") e diga se Ă© um dia Ăștil, fim de semana, ou se Ă© um dia invĂĄlido.

Dica: use switch, case, default, e evite letras maiĂșsculas com .toLowerCase().

Atualizado