--- title: Igualdad Estricta (===) slug: Web/JavaScript/Referencia/Operadores/Strict_equality translation_of: Web/JavaScript/Reference/Operators/Strict_equality ---
{{jsSidebar("Operators")}}

El operador de estricta igualdad (===) revisa si dos operandos son iguales y produce un resultado Booleano. A diferencia del operador de igualdad regular (==), el operador de estricta igualdad siempre considera que los operandos de distinto tipo de valor son diferentes y nunca similares.

{{EmbedInteractiveExample("pages/js/expressions-strict-equality.html")}}

Sintaxis

x === y

Descripción

Los operadores de estricta igualdad (=== y !==) usan el Algoritmo Estricto Comparativo de Igualdad  para comparar dos operandos:

La diferencia más notable entre este operador y el operador de igualdad regular (==) es que si los operandos son de distinto tipo de valor, el operador == intenta convertir los valores a un mismo tipo de dato antes de compararlos.

Ejemplos

Comparando operandos del mismo tipo

console.log("hello" === "hello");   // true
console.log("hello" === "hola");    // false

console.log(3 === 3);               // true
console.log(3 === 4);               // false

console.log(true === true);         // true
console.log(true === false);        // false

console.log(null === null);         // true

Comparando operandos de distinto tipo

console.log("3" === 3);           // false

console.log(true === 1);          // false

console.log(null === undefined);  // false

Comparando objetos

const object1 = {
  name: "hello"
}

const object2 = {
  name: "hello"
}

console.log(object1 === object2);  // false
console.log(object1 === object1);  // true

Especificaciones

Specification
{{SpecName('ESDraft', '#sec-equality-operators', 'Equality operators')}}

Compatibilidad entre exploradores

{{Compat("javascript.operators.strict_equality")}}

También revisa