você está aqui: Home  → Arquivo de Mensagens

Dicas de Programação - Qual a diferença entre == e === em Javascript?

Colaboração: Ricardo Takemura

Data de Publicação: 09 de junho de 2014

Então, existe uma diferença (a dica vale para PHP também). Vamos ver o seguinte código:

if ('0' == 0) { 
  alert('É igual!');  
} else { 
  alert('É diferente');  
} 

Então, se executarmos o código acima, veremos que ele diz que os valores são iguais mesmo que os tipos (um string, outro um inteiro) sejam diferentes.

Meio estranho, não?

Agora faremos com o operador "===" :

if ('0' === 0) { 
  alert('É igual!');  
} else { 
  alert('É diferente');  
} 

Incrivel, agora ele fala que é diferente... Mas se eu colocar com o mesmo tipo (inteiro e inteiro):

if (0 === 0) { 
  alert('É igual!');  
} else { 
  alert('É diferente');  
} 

Ele fala que é igual! :)

Para quem não adivinhou, o operador "==" compara os valores sem verificação do tipo e o operador "===" compara os valores e os tipos de cada variável (ou constante).

Legal, não? ;)



Veja a relação completa dos artigos de Ricardo Takemura