Junior
¿Qué es el ámbito (scope) de las variables en JavaScript?
sobes.tech AI
Respuesta de la IA
El ámbito determina la disponibilidad de variables, funciones y objetos en una parte específica del código.
En JavaScript, existen varios tipos de ámbito:
- Ámbito global (Global Scope): Las variables declaradas fuera de cualquier función o bloque están disponibles desde cualquier parte del código.
- Ámbito de función (Function Scope): Las variables declaradas dentro de una función (antes de ES6) solo están disponibles dentro de esa función y en las funciones anidadas.
- Ámbito de bloque (Block Scope): Las variables declaradas con
letyconstdentro de bloques (por ejemplo,{}o bucles) solo están disponibles dentro de ese bloque.
Ejemplo:
// Ámbito global
let globalVar = "Soy global";
function someFunction() {
// Ámbito de función (antes de ES6)
var functionVar = "Estoy dentro de la función";
console.log(globalVar); // Variable global accesible
if (true) {
// Ámbito de bloque (para let y const)
let blockVar = "Estoy dentro del bloque";
console.log(functionVar); // Variable de función accesible
console.log(blockVar); // Variable de bloque accesible
}
// console.log(blockVar); // Error: blockVar no accesible aquí
}
someFunction();
// console.log(functionVar); // Error: functionVar no accesible aquí
Palabras clave para declarar variables y su impacto en el ámbito:
| Palabra clave | Ámbito antes de ES6 | Ámbito después de ES6 |
|---|---|---|
var |
Funcional | Funcional |
let |
- | De bloque |
const |
- | De bloque |
Comprender el ámbito es crucial para evitar conflictos de nombres de variables y para escribir código limpio y predecible.