Qual é a diferença entre `==` e `===`?
Topics
JavaScript
Edit on GitHub
==
é o operador de igualdade abstrato enquanto ===
é o operador de igualdade rigoroso. O operador ==
será comparado para a igualdade após fazer quaisquer conversões de tipo necessárias. O operador ===
não fará conversão de tipo, então se dois valores não forem do mesmo tipo ===
simplesmente retornará false
. Ao usar ==
, coisas engraçadas podem acontecer, tais como:
Como regra geral, nunca use o operador ==
, exceto por conveniência ao comparar com null
ou undefined
, onde a == null
retornará true
se a for null
ou undefined.