ANÚNCIO

~/questoes/programacao

Qual operador você usaria para verificar se dois valores são iguais em valor e tipo?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Para fixar

Operadores de Comparação: === vs ==

Conceito central

Em JavaScript, existem dois operadores principais para comparar valores: === verifica se dois valores são iguais em valor E tipo, enquanto == compara apenas o valor e permite coerção de tipo. O === é mais seguro porque evita comportamentos inesperados.

Por que essa resposta faz sentido

O operador === compara tanto o valor quanto o tipo de dado. Isso significa que 5 === '5' retorna false, pois um é número e o outro é texto. Essa comparação rigorosa é essencial para evitar erros em lógica condicional.

Armadilhas comuns

  • Confundir == com === e acabar aceitando comparações entre tipos diferentes sem perceber
  • Usar == assumindo que está fazendo comparação rigorosa, quando na verdade JavaScript está convertendo tipos automaticamente
  • Não testar comportamentos de coerção e descobrir erros apenas quando o código está em produção

Entenda as alternativas

A

O operador != verifica se dois valores são DIFERENTES, não se são iguais. Além disso, != também permite coerção de tipo, assim como ==. Não é a resposta para esta questão.

B

Nenhum operador em JavaScript serve para verificar se valores estão em ordem inversa. Esta alternativa não descreve nenhum operador real da linguagem.

C

O operador === é exatamente o que você precisa. Ele verifica igualdade rigorosa, levando em conta tanto o valor quanto o tipo de dado, tornando suas comparações mais previsíveis e seguras.

D

O operador == compara valores, mas permite coerção de tipo. Por exemplo, 5 == '5' retorna true, mesmo sendo tipos diferentes. Isso pode gerar comportamentos inesperados em seu código.

Dica prática: Abra o console do navegador e teste: console.log(5 == '5') retorna true, mas console.log(5 === '5') retorna false. Use === como padrão em seus projetos para evitar surpresas desagradáveis.

Revise pensando: Se você tem a variável x = 10 (número) e quer comparar com y = '10' (texto), qual operador garantiria que a comparação retornasse false?