DEV Community

Cristian Fernando
Cristian Fernando

Posted on

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

¿Qué imprime este código JavaScript?

let greeting;
greetign = {}; // Typo!
console.log(greetign);
Enter fullscreen mode Exit fullscreen mode
  • A: {}
  • B: ReferenceError: greetign is not defined
  • C: undefined

Respuesta en el primer comentario.


Top comments (1)

Collapse
 
duxtech profile image
Cristian Fernando

La respuesta es:

A: {}

En la primera línea declaramos let greeting;, al declarar una variable con let sin inicializarla, esta toma el valor de undefined.

En la segunda línea, se comete un error de tipeo greetign = {};, pero como la variable no esta declarada ni con var, let o const; Javascript tras bambalinas hace algo como lo siguiente aunque el programador no lo vea:

var greetign = {}; // Typo!
Enter fullscreen mode Exit fullscreen mode

Entonces greetign se crea como variable global, en el navegador en el objeto window y en un entorno de Node.js en el objeto global.

El código final se veria así:

let greeting; // undefined
var greetign = {}; // Typo!
console.log(greetign); // {}
Enter fullscreen mode Exit fullscreen mode