Sobes.tech
Junior

¿Cuál es la diferencia entre == y === en JavaScript?

sobes.tech AI

Respuesta de la IA

El operador == (igualdad suelta) realiza la conversión de tipos de los operandos antes de comparar.

El operador === (igualdad estricta) no realiza la conversión de tipos. Compara los valores y los tipos de los operandos.

// Ejemplos ==
console.log(5 == '5');   // true (la cadena '5' se convierte a número 5)
console.log(true == 1);    // true (el número 1 se convierte a true)
console.log(null == undefined); // true (regla especial)

// Ejemplos ===
console.log(5 === '5');  // false (el tipo number no es igual al tipo string)
console.log(true === 1);   // false (el tipo boolean no es igual al tipo number)
console.log(null === undefined); // false (el tipo null no es igual al tipo undefined)

El uso de === es preferible en la mayoría de los casos, ya que es más predecible y evita comportamientos no evidentes relacionados con la conversión de tipos.