Hoisting yra JavaScript elgesys, kuomet deklaracijos perkeliamos į jų scope viršų kompiliavimo fazėje, prieš paleidžiant bet kokį kodą. Tačiau kaip kažkas yra "hoisting"-as skiriasi priklausomai nuo deklaracijos tipo.
js
console.log(a); // undefined — `var a` is hoisted & initialized to undefined
var a = 1;
foo(); // "works!" — function declarations are fully hoisted
function foo() { console.log("works!"); }
console.log(b); // ❌ ReferenceError — temporal dead zone
b = ;
