Revisão de Comparações e Condicionais em JavaScript

Comparações e os tipos de dados null e undefined

  • Comparações e undefined: Uma variável é undefined quando foi declarada mas não recebeu um valor. É o valor padrão de variáveis não inicializadas e parâmetros de função que não receberam um argumento. undefined se converte em NaN em contextos numéricos, o que faz com que todas as comparações numéricas com undefined retornem false.
console.log(undefined < 0); // false (NaN < 0 is false)
console.log(undefined >= 0); // false (NaN >= 0 is false)
  • Comparações e null: O tipo null representa a ausência intencional de um valor. null é convertido para 0 em contextos numéricos, o que pode resultar em comportamento inesperado em comparações numéricas:
console.log(null < 0); // false (0 < 0 is false)
console.log(null >= 0); // true (0 >= 0 is true)
  • Ao usar o operador de igualdade (==), null e undefined são iguais apenas entre si e a eles mesmos:
console.log(null == undefined); // true
console.log(null == 0); // false
console.log(undefined == NaN); // false
  • No entanto, ao usar o operador de igualdade estrita (===), que verifica tanto o valor quanto o tipo sem realizar coerção de tipo, null e undefined não são iguais:
console.log(null === undefined); // false

Instruções switch

  • Definição: Uma instrução switch avalia uma expressão e compara seu valor com uma série de cláusulas case. Quando uma correspondência é encontrada, o bloco de código associado a esse case é executado. Uma instrução break deve ser colocada no final de cada case para terminar sua execução e continuar com o próximo. O case default é um case opcional e só é executado se nenhum dos outros cases corresponder. O case default é colocado no final de uma instrução switch.
const dayOfWeek = 3; 

switch (dayOfWeek) {
  case 1:
    console.log("It's Monday! Time to start the week strong.");
    break;
  case 2:
    console.log("It's Tuesday! Keep the momentum going.");
    break;
  case 3:
    console.log("It's Wednesday! We're halfway there.");
    break;
  case 4:
    console.log("It's Thursday! Almost the weekend.");
    break;
  case 5:
    console.log("It's Friday! The weekend is near.");
    break;
  case 6:
    console.log("It's Saturday! Enjoy your weekend.");
    break;
  case 7:
    console.log("It's Sunday! Rest and recharge.");
    break;
  default:
    console.log("Invalid day! Please enter a number between 1 and 7.");
}