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.
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()mostratrueporquesavedPasswordeenteredPasswordcontêm exatamente o mesmo texto. - O segundo
console.log()comparasavedPasswordcomwrongPassword. Como o texto é diferente, o JavaScript mostrafalse. - O terceiro
console.log()usa!==e mostratrueporque 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.
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.
// coloque seu código abaixo
console.log()Resumo
- Os operadores de comparação comparam dois valores e sempre retornam
trueoufalse. =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.