Pregunta Diferencia entre == y === en JavaScript [duplicado]


Posible duplicado:
Javascript === vs ==: ¿Importa qué operador "igual" uso? 

Cuál es la diferencia entre == y === en JavaScript? También he visto != y !== operadores. ¿Hay más operadores de este tipo?


1411
2018-02-07 11:53


origen


Respuestas:


=== y !== son operadores de comparación estricta:

JavaScript tiene tanto estricto y   comparación de igualdad de conversión de tipos.   Para una igualdad estricta, los objetos son   comparado debe tener el mismo tipo y:

  • Dos cadenas son estrictamente iguales cuando tienen la misma secuencia de   personajes, la misma longitud y el mismo   personajes en posiciones correspondientes.
  • Dos números son estrictamente iguales cuando son numéricamente iguales (tienen   el mismo valor numérico). NaN no es   igual a cualquier cosa, incluido NaN.   Los ceros positivos y negativos son iguales   a otro.
  • Dos operandos booleanos son estrictamente iguales si ambos son verdaderos o   ambos son falsos
  • Dos objetos son estrictamente iguales si se refieren al mismo objeto.
  • Los tipos nulos e indefinidos son == (pero no ===). [Es decir. (Nulo == Indefinido) es verdadero pero (Nulo === Indefinido) es falso]

Operadores de comparación - MDC


1075
2018-02-07 11:55



Eche un vistazo aquí: http://longgoldenears.blogspot.com/2007/09/triple-equals-in-javascript.html

Los 3 signos iguales significan "igualdad sin coerción de tipo". Usando el triple igual, los valores deben ser iguales en tipo también.

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

1760
2018-02-07 11:57