Avatar ·

¿Qué operador de comparación usar en JavaScript: == o ===?

¡Hola a todos! Acabo de empezar a aprender JavaScript y me encontré con una confusión. En algunos tutoriales escriben que se debe usar `==`, y en otros `===`. Probé ambos y parecen funcionar igual, pero luego me topé con un comportamiento extraño. Aquí hay un ejemplo: ```javascript console.log(5 == "5"); // true console.log(5 === "5"); // false ``` ¿Por qué pasa esto? Si 5 es un número y "5" es un string. Esperaba que ambos devolvieran false, pero el primero dice true. Aún más extraño: ```javascript console.log(false == 0); // true console.log(false === 0); // false console.log(null == undefined); // true console.log(null === undefined); // false ``` Me parece que `===` es más estricto y predecible, pero he visto mucho código en GitHub donde se usa `==`. ¿Cuál se considera correcto? ¿Cuándo se debe usar la doble igualdad y cuándo la triple? ¿Y se puede simplemente usar solo `===`? Agradecería una explicación detallada con ejemplos para finalmente entenderlo.