Junior — Middle
¿Cuáles son las diferencias entre declarar variables usando let y var en JavaScript?
sobes.tech AI
Respuesta de la IA
Las variables declaradas con var tienen un alcance funcional (scope de función), mientras que let tiene un alcance de bloque (block scope). Esto significa que una variable con let solo está disponible dentro de las llaves más cercanas, por ejemplo, dentro de un ciclo o condición.
Además, var se eleva (hoisting) y se inicializa con el valor undefined antes de que se ejecute el código, mientras que let también se eleva, pero no se inicializa; intentar acceder a la variable antes de su declaración provocará un error (Zona Muerta Temporal).
Ejemplo:
function test() {
console.log(a); // undefined
// console.log(b); // ReferenceError
var a = 1;
let b = 2;
}
También, var permite redeclarar la misma variable en la misma área de alcance, lo que puede causar errores, mientras que let no.