Menu
Coddy logo textTech

Igualdad estricta vs. débil

Parte de la sección Fundamentos del Journey de JavaScript de Coddy. Lección 16 de 77.

En JavaScript, existen dos tipos de operadores de igualdad: igualdad débil (==) e igualdad estricta (===).

La igualdad débil (==) comprueba si dos valores son iguales después de realizar la coerción de tipos. Esto significa que si los operandos tienen tipos diferentes, JavaScript intentará convertirlos a un tipo común antes de realizar la comparación.

Por ejemplo:

let b = 5 == "5";   // Es verdadero, porque la cadena "5" se convierte al número 5 antes de la comparación
let b = 0 == false; // Es verdadero, porque el booleano false se convierte al número 0 antes de la comparación
let c = "" == false; // Es verdadero, porque la cadena vacía se convierte al número 0 antes de la comparación

La igualdad estricta (===), por otro lado, comprueba si dos valores son iguales sin realizar ninguna conversión de tipo. Si los operandos tienen tipos diferentes, se consideran no iguales.

Por ejemplo:

let b = 5 === "5";   // Contiene false, porque no se realiza ninguna conversión de tipo, y un número no es igual a una cadena
let b = 0 === false; // Contiene false, porque no se realiza ninguna conversión de tipo, y el número 0 no es igual al booleano false

En general, se recomienda usar la igualdad estricta (===) en la mayoría de los casos para evitar resultados inesperados debido a la coerción de tipos.

De manera similar, también existen los operadores de desigualdad débil (!=) y desigualdad estricta (!==) que funcionan de manera similar, pero comprueban la desigualdad en lugar de la igualdad.

La desigualdad débil (!=) comprueba si dos valores no son iguales después de realizar la coerción de tipos, mientras que la desigualdad estricta (!==) comprueba si dos valores no son iguales sin realizar la conversión de tipos.

challenge icon

Desafío

Principiante

Se te proporciona un código con tres variables: a, b y c.

Tu tarea es realizar las siguientes comparaciones y mostrar los resultados:

  1. Comprueba si a es vagamente igual a b y guarda el resultado en d.
  2. Comprueba si a es estrictamente igual a c y guarda el resultado en e.
  3. Comprueba si b es vagamente no igual a c y guarda el resultado en f.
  4. Comprueba si a es estrictamente no igual a b y guarda el resultado en g.

Utiliza las variables dadas y los operadores de comparación para completar la tarea.

Pruébalo tú mismo

// Variables dadas
let a = 10
let b = "10"
let c = true

// Escribe tu código debajo


// No cambies la línea de abajo
console.log(`d = ${d}`)
console.log(`e = ${e}`)
console.log(`f = ${f}`)
console.log(`g = ${g}`)
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de JavaScript online