μ μΈλ¬Έμ΄ λ§μΉ μ΅μλ¨μ λμ΄μ¬λ €μ§ λ―ν νμ
console.log(TVChannel); // undefined μΆλ ₯
var TVChannel = "NetFlix"
μλ° μ€ν¬λ¦½νΈ μμ§μ΄ λ¨Όμ μ 체 μ½λλ₯Ό μ€μΊν΄μ λ³μ κ°μ μ 보λ₯Ό μ€ν 컨ν μ€νΈ Record(νκ²½ record)μ 미리 μ μ₯μμΌμ€λ€.
νΈμ΄μ€ν μ 2κ°μ§κ° μ‘΄μ¬νλ€.
Variable Hoisting (λ³μ νΈμ΄μ€ν )
var μ let ,const μ κ²½μ° μ‘΄μ¬
var (μ μΈκ³Ό μ΄κΈ°ν λμμ λ°μ)
let,const (μ μΈλ§ λ°μ)
μ΄κ²½μ°μλ λ³μλ λ§λ€μ§λ§ μ΄κΈ°νλ μ§ννμ§μλλ€ .
κ·Έλ κΈ° λλ¬Έμ console.logκ° λ³μκ° μ μΈλκ³ κ°μ λ£κΈ°μ μ μ€νλλ©΄ reference error κ° λ°μ
console.log(TVChannel); // -> reference error λ°μ
//μ΄μͺ½ λΆλΆμ μΌμμ μ¬κ°μ§λλ‘ λΆλ₯Έλ€.
---
const TVChannel = "NetFlix"
Function Hoisting(ν¨μ νΈμ΄μ€ν )
var νμ μ ν¨μμ κ²½μ° μ μΈλ¬Έ μ΄μ μ μ€ννλ €νλ©΄ ν¨μμ κ°μ undefinedμ΄μ§λ§ undefinedλΌλ λ°μ΄ν°νμ μ ν¨μμ λ¬λ¦¬ νΈμΆμ΄ λΆκ°λ₯νκΈ° λλ¬Έμ νμ μλ¬ λ°μ
study() // νμ
μλ¬ λ°μ
var study(){
};
constλ reference error λ°μ
study() // referenec Error λ°μ
--// μΌμμ μ¬κ°μ§λ
const study(){
};
function(ν¨μ μ μΈλ¬Έ) μΌλ‘ ν¨μλ₯Ό λ§λ€μ studyν¨μ μ μΈκ³Ό λμμ μμ±λ κ°μ²΄λ₯Ό νκ²½λ μ½λμ κΈ°λ‘