Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

diferença na comparação com == e ===

Olá bom dia.

Assistindo a aula de Thrthy e falsy do curso de Javascript para backend fiquei com uma dúvida... O código abaixo me retorna true para todas as comparações:

// truthy and Falsy // são valores considerados como true e false no javascript

// Valores 1 e 0 // 0 => false 1 => true console.log(0==false) console.log(1==true)

// strings vazias são sempre valores falsos console.log(""==false)

Porém, quando eu altero a comparação para === que também é utilizado no js (conforme vídeo da primeira aula) ele me retorna false para todas as comparações...

// truthy and Falsy // são valores considerados como true e false no javascript

// Valores 1 e 0 // 0 => false 1 => true console.log(0===false) console.log(1===true)

// strings vazias são sempre valores falsos console.log(""===false)

Podem me ajudar a entender o porque ?

Obrigada e até mais ;)

1 resposta
solução!

Descobri o porque!

Isso ocorre por causa da conversão implícita e explícita do próprio javascript.

Ao compararmos com == é feita a comparação implícita ou seja, ele vai verificar apenas os valores contidos nas variáveis.

Ao compararmos utilizando === o js vai comparar valores e tipos de dados.

Conforme aula de conversão de tipos :)

Até mais.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software