Pergunta

Duplicate possíveis:
Javascript === vs ==: Será que isso importa que “igual” uso operador I?

O que é a diferença entre == e === em JavaScript? Também já vi operadores != e !==. Há mais tais operadores?

Foi útil?

Solução

=== e !== são operadores de comparação estritas:

JavaScript tem tanto rigorosa e digite conversora de comparação de igualdade. Pela igualdade strict os objetos sendo comparação deve ter o mesmo tipo e:

  • Duas cordas são rigorosamente iguais quando têm a mesma sequência de caracteres, mesmo comprimento, e mesmo caracteres em posições correspondentes.
  • Dois números são estritamente iguais quando eles são numericamente iguais (tem o mesmo valor numérico). NaN não é igual a qualquer coisa, incluindo NaN. Positivo e zeros negativos são iguais um ao outro.
  • operandos dois booleanos são estritamente iguais se ambas são verdadeiras ou ambas são falsas.
  • Dois objetos são estritamente iguais se referem à mesma Object.
  • Null e Undefined tipos são == (mas não ===). [Isto é (Null==Undefined) é true mas (Null===Undefined) é false]

Operadores de comparação - MDC

Outras dicas

Dê uma olhada aqui: http: //longgoldenears.blogspot .com / 2007/09 / triple-iguala-in-javascript.html

A "igualdade sem coerção de tipo" 3 sinais iguais média. Usando os três iguais, os valores devem ser iguais em tipo também.

0 == false   // true
0 === false  // false, because they are of a different type
1 == "1"     // true, automatic type conversion for value only
1 === "1"    // false, because they are of a different type
null == undefined // true
null === undefined // false
'0' == false // true
'0' === false // false
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top