
let globalNum = 100;
function testFunc() {
console.log(globalNum);
}
testFunc(); // 100
console.log(globalNum); // 100

JSμμ λ³μμ ν¨μμ μ μΈλ¬Έμ΄ ν΄λΉ λ²μμ κ°μ₯ μμͺ½μΌλ‘ λμ΄μ¬λ €μ§λ λ―ν νμ
connectStrings('study', 'hoisting');
function connectStrings(str1, str2) {
console.log(str1 + str2);
}

console.log(num1);
let num1 = 123;

varμ λ¬λ¦¬let&constλ‘ μ μΈλ λ³μ
π λ³μ μ€μ½ν μμͺ½μμ λ³μμ μ΄κΈ°νκ° μλ£ν λ λκΉμ§
β οΈTDZλΌλ 곡κ°μ μκΈ° λλ¬Έ β οΈ
π»Temporal Dead Zoneβ‘μΌμμ μΈ μ¬κ°μ§λ
λ€μ λ§ν΄, λ³μλ₯Ό μ¬μ©νλ κ²μ νμ©νμ§ μλ 곡κ°β
πJS μμ§μ΄ ν΄μνλ μμλλ‘ λ΄λ³΄μπ
let&constβ‘νΈμ΄μ€ν λ°μνμ§ μλ κ² β
varμ λ¬λ¦¬ λ³μ μ€μ½νμ κ°μ₯ μμͺ½μμ
numλ³μμ μ΄κΈ°νκ° μλ£λ λκΉμ§ ν΄λΉ μ½λκ°
TDZ곡κ°μ μκΈ°μ νΈμ΄μ€ν λ°μνμ§ μλ κ²μ²λΌ 보μ΄λ κ²π‘π§
let&constλ‘ μ μΈλ λ³μκ° μ΄κΈ°ν μ§νλ λκΉμ§TDZμ λ¨Έλ¬Όλ¬ μλ μ΄μ
varβ‘λ³μ μμ±ν λ€μ λ°λ‘ λ©λͺ¨λ¦¬ 곡κ°μ λ³μμ 곡κ°μ 미리 ν λΉν΄μ£Όμ§λ§
let&constβ‘λ³μ μ΄κΈ°ν λ λκΉμ§ λ©λͺ¨λ¦¬ 곡κ°μ΄ ν보λμ§ μκΈ° λλ¬Έβ
π£ν΄λΉ ν€μλλ‘ μμ±λ λ³μλ μ¬μ©ν μ μλ 곡κ°μΈTDZμ λ€μ΄κ°κ² λ¨π£
νΈμ΄μ€ν μ JSμ κΈ°λ³Έ μ±μ§μ΄μ§λ§
νΈμ΄μ€ν λ§μ΄ λ°μνκ² μμ±λ μ½λλ κ°λ μ±β€΅
μ½λλ₯Ό μ§κ΄μ μΌλ‘ ν΄μνκΈ° μ΄λ €μ μ½λ μ΄ν΄λ‡
π₯ μ¬λ¬κ°μ§ μ€λ₯λ€μ μΌμΌν¬ μ μμ π₯
κ°λ₯νvarλμletμ΄λconstμ¬μ©πββοΈ
βTDZλλ¬Έμ μ μΈ μ μ λ³μλ ν¨μμ μ κ·Όνμ§ μλλ‘ μ£Όμ βlet num = 123; console.log(num);νμ μ μΈ μ΄νμ μ¬μ©νλ κ² μμ π
console.log(num2);
var num2 = 123;

var num;
// 1. μ΄λ κ² λ³μμ μ μΈλ¬Έλ§μ μ€μ½νμ μ΅μλ¨μΌλ‘ λμ΄μ¬λ¦° λ€μ
console.log(num);
// 2. μ½λλ₯Ό μ€ννκ³
num = 123;
// 3. λ³μμ μ΄κΈ°κ°μ ν λΉν¨