const a = [1, 2, 3];
const b = [1, 2, 3];
console.log(a == b.toString()); 📥 Inputs:
a = [1, 2, 3], b = [1, 2, 3]
❓ ¿Cuál es el output?
Ingresa tu respuesta abajo
💡 Explicación
Aunque a y b son arrays idénticos, la comparación falla. Cuando usamos ==, JavaScript convierte el array 'a' a string '1,2,3' y compara con b.toString() que también es '1,2,3'. ¡Pero el resultado es FALSE! Esto se debe a que JavaScript primero convierte 'a' a string, luego intenta comparar dos strings diferentes en referencias de memoria. La trampa: == compara referencias de objetos antes de hacer coerción de tipos cuando ambos lados son objetos.
¿Cuál es el resultado? 🤔