DEV Community

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

Collapse
 
duxtech profile image
Cristian Fernando • Edited

La respuesta:

  • C: Hmm.. You don't have an age I guess

Cuando comparamos objetos hay que tener mucho cuidado.
Comparar primitivos es sencillo, pero recuerda que los objetos se almacenan en memoria teniendo en cuenta su referencia y no su valor.

Dicho esto, el objeto que pasamos como argumento a checkAge es el objeto { age: 18 }, este es diferente al objeto que evaluamos en los if de la función, por más que usemos comparación estricta, seguirán siendo objetos diferentes por que sus referencias son diferentes:

{ age: 18 } == { age: 18 } //false
{ age: 18 } === { age: 18 } //false
Enter fullscreen mode Exit fullscreen mode