EasyCode365EasyCode365

Operadores de comparação

Bem-vindo à lição sobre operadores de comparação. Em programação, frequentemente precisamos tomar decisões com base em determinadas condições serem atendidas ou não.

Por exemplo, você pode precisar verificar se a senha digitada por um usuário está correta ou se ele tem idade suficiente para ver um site específico. Para fazer isso, comparamos valores.

O que os operadores de comparação fazem

Os operadores de comparação são símbolos especiais usados para comparar dois valores.

Sempre que você usa um operador de comparação, o JavaScript verifica a afirmação e retorna um valor booleano: true quando a comparação corresponde aos valores, ou false quando não corresponde.

= vs ===

Uma armadilha comum para iniciantes é confundir um único sinal de igual (=) com três sinais de igual (===).

  • O = único é o operador de atribuição. Ele atribui um valor a uma variável, por exemplo: const age = 18;.
  • O === triplo é o operador de igualdade estrita. Ele compara dois valores para ver se eles são exatamente iguais, tanto em valor quanto em tipo de dado.

Aviso rápido: Você pode às vezes ver igual duplo (==) ou diferente (!=) em código mais antigo. Eles podem ser confusos porque o JavaScript pode tentar converter tipos de dados nos bastidores antes de compará-los.

Como iniciante, é melhor usar === e !== para resultados mais seguros e previsíveis.

Primeiro exemplo de código

Vamos verificar se a senha digitada por um usuário corresponde à senha salva.

Editável
const savedPassword = "secretPassword123";
const enteredPassword = "secretPassword123";

console.log(savedPassword === enteredPassword);

const wrongPassword = "Password123";
console.log(savedPassword === wrongPassword);
console.log(savedPassword !== wrongPassword);

Análise do código

Quando você clicar em Executar, verá os resultados na seção de saída.

  • O primeiro console.log() mostra true porque savedPassword e enteredPassword contêm exatamente o mesmo texto.
  • O segundo console.log() compara savedPassword com wrongPassword. Como o texto é diferente, o JavaScript mostra false.
  • O terceiro console.log() usa !== e mostra true porque as duas senhas são diferentes.

Também temos o operador estritamente diferente de (!==). Ele verifica se dois valores são diferentes.

Comparando números

Também podemos comparar números para descobrir qual é maior ou menor.

Aqui estão os operadores comuns de comparação de números:

  • > significa maior que.
  • < significa menor que.
  • >= significa maior ou igual a.
  • <= significa menor ou igual a.

Vamos ver um exemplo prático com preços e idades.

Editável
const itemPrice = 50;
const userBalance = 30;

// O usuário consegue pagar pelo item?
console.log(userBalance >= itemPrice);

const age = 16;
const requiredAge = 18;

// O usuário é mais novo do que a idade exigida?
console.log(age < requiredAge);

Mini tarefa

Tente editar o bloco de código acima.

Mude userBalance para 50 e clique em Executar.

A primeira saída muda para true? Como 50 é maior ou igual a 50, a condição se torna verdadeira.

Pequeno quiz

Pergunta: O que console.log(10 !== 10) vai mostrar?

Resposta: Vai mostrar false.

O operador !== verifica se dois valores são estritamente diferentes. Como 10 é exatamente igual a 10, a afirmação 10 !== 10 é falsa.

Pequeno desafio

Imagine que você está criando um jogo em que um jogador precisa superar uma pontuação máxima de 100 para vencer.

Crie uma variável para a pontuação do jogador e use um operador de comparação para verificar se a pontuação dele é estritamente maior que a pontuação máxima.

Editável
// coloque seu código abaixo

console.log()

Resumo

  • Os operadores de comparação comparam dois valores e sempre retornam true ou false.
  • = atribui um valor, enquanto === verifica se dois valores são exatamente iguais.
  • !== verifica se dois valores não são exatamente iguais.
  • Use >, <, >= e <= para comparar números, como idades, saldos ou pontuações de jogos.