N
Size: a a a
N
D
D
1
N
D
N
DM
function foo() {
console.log(a)
var a = 42
} function foo() {
var a
console.log(a)
a = 42
}D
function foo() {
console.log(a)
var a = 42
} function foo() {
var a
console.log(a)
a = 42
}N
DM
let / const все работает похожим образом, но....N
DM
var b и значение у b будет undefinedDM
c как я уже написал, на самом деле тоже всплывет, но проблема будет не в том, что в c будет undefined, а то, что c будет в TDZ (temporal dead zone), поэтому обращение к ней вызовет ошибку выполненияD
let / const все работает похожим образом, но....DM
N
var b и значение у b будет undefinedDM
DM