¿Cuál es la diferencia entre let y var en JavaScript? Explique con ejemplos
¡Hola! Empecé a estudiar JavaScript y me encontré con confusión. Sé que antes todos declaraban variables con `var`, pero ahora en los tutoriales modernos recomiendan `let`. Parece que ambos hacen lo mismo: crean variables. Pero cuando escribo código, se comportan de manera diferente.
Aquí hay un ejemplo que me desconcertó:
```javascript
var x = 10;
if (true) {
var x = 20; // Pensé que era una nueva variable
console.log(x); // 20
}
console.log(x); // 20 — ¿por qué no 10?
```
Si reemplazo `var` por `let`:
```javascript
let x = 10;
if (true) {
let x = 20;
console.log(x); // 20
}
console.log(x); // 10 — aquí sí es 10, como se esperaba
```
¿Por qué sucede esto? También escuché sobre "hoisting" (elevación) — ¿tiene algo que ver? Explique, por favor, para un principiante, cuándo usar `let` y cuándo `var`, y cuáles son las diferencias clave. Es importante que lo entienda para no cometer errores en el futuro.
<<>>
Diferencias principales: scope, hoisting y redeclaración
No answers yet.
Inicia sesión para dejar una respuesta
Blogs