😎Hoisting

Hoisting es un comportamiento del motor de JavaScript que consiste en "elevar" las declaraciones de funciones y variables al comienzo de su contexto de ejecución. Esto significa que las funciones y variables pueden ser utilizadas antes de ser declaradas en el código.

📝 Hoisting de Funciones

Cuando se declara una función utilizando la palabra reservada function, toda la declaración de la función, incluida su implementación, se eleva al comienzo del contexto de ejecución. Esto permite llamar a la función antes de su declaración en el código.

console.log(suma()); // Output: "Sumando"

function suma() {
    console.log('Sumando');
}

📝 Hoisting de Variables

Las variables declaradas con var también son elevadas al comienzo del contexto de ejecución, pero solo la declaración, no la inicialización. Esto significa que las variables declaradas con var se inicializan con undefined hasta que se alcanza la línea de asignación.

console.log(vieja); // Output: undefined

var vieja = 'Ya no debes usar esto';

En cambio, las variables declaradas con let y const también son elevadas, pero no se inicializan. Intentar acceder a ellas antes de su declaración resultará en un ReferenceError.

console.log(hola); // ReferenceError: Cannot access 'hola' before initialization

let hola = 'Hola';

Última actualización