DEV Community

Discussion on: Paracetamol.js💊| #9: ¿Qué imprime este código JavaScript?

Collapse
 
duxtech profile image
Cristian Fernando

Repuesta correcta:

C: true false false

Veamos por que.
En el primer console.log:

console.log(a == b);
Enter fullscreen mode Exit fullscreen mode

Vemos que hacemos una comparación débil con el operador ==, esto significa que solo compararemos los valores de a y b, por ende obtendremos un true.

En el segundo console.log:

console.log(a === b);
Enter fullscreen mode Exit fullscreen mode

Hacemos una comparación estricta usando el operador ===, esto significa que compararemos valores y tipos de datos, a y b tienen el mismo valor, pero a es de tipo number y b esta siendo inicializada usando el contructor Number, por ende es un objeto; entonces obtendremos un false.

En el tercer console.log

console.log(b === c);
Enter fullscreen mode Exit fullscreen mode

Al igual que el caso anterior, intentamos comparar de manera estricta un objeto contra un número, entonces tendremos como resultado un false.

Conclusión: trata de usar simpre ===.