DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Paracetamol.js💊| #177: Explica este código JavaScript

Explica este código JavaScript

Dificultad: Básico

if (true) { let y = 5; y = 6; // puede ser re-asignada let y = 7; console.log(y); } 
Enter fullscreen mode Exit fullscreen mode

A. 6
B. SyntaxisError: Identifier 'y' has already been declared
C. 7
D. ReferenceError: y is not defined

Respuesta en el primer comentario.


Top comments (1)

Collapse
 
duxtech profile image
Cristian Fernando

Respuesta:
B. SyntaxisError: Identifier 'y' has already been declared

let tiene las siguientes características:

  • Tiene scope de bloque.
  • Los valores pueden ser re-asignados pero no re-declarados.
  • Es posible solo declarar variables sin necesidad de asignarles un valor:
const num; console.log(num); // undefined 
Enter fullscreen mode Exit fullscreen mode

En el ejemplo: no es posible volver a declarar una variable con el mismo nombre pero si podemos asignar otro valor a dicha variable.

El console.log(y) funciona por que esta dentro del bloque, si estuviera fuera de el también tendríamos un error por el scope de bloque de la variable.