π₯ ν΄λ‘μ
μ¬μ μ μλ―Έ Closure = νμ
ν¨μκ° μ μΈλ λΉμμ μ£Όλ³ νκ²½κ³Ό κ°μ΄ κ°νλ κ².
-> λ λ€λ₯Έ λ§λ‘, ν¨μκ° μν λ μ컬 μ€μ½νλ₯Ό κΈ°μ΅νλ©°, ν¨μκ° λ μ컬 μ€μ½ν λ°μμ μ€νλ λλ μ΄ μ€μ½νμ μ κ·Όν μ μκ² ν΄μ£Όλ κΈ°λ₯
λ μ컬 μ€μ½ν: ν¨μλ₯Ό μ΄λμ νΈμΆνλμ§κ° μλλΌ *μ΄λμ μ μΈνμλμ§μ λ°λΌ κ²°μ λλ κ²**μ λ§νλ€.
μ¦, ν¨μλ₯Ό μ΄λμ μ μΈνμλμ§μ λ°λΌ μμ μ€μ½νλ₯Ό κ²°μ νλ€λ λ»μ΄λ©°, κ°μ₯ μ€μν μ μ ν¨μμ νΈμΆμ΄ μλλΌ ν¨μμ μ μΈμ λ°λΌ κ²°μ λλ€λ μ μ΄λ€.
λ€λ₯Έ λ§λ‘, μ μ μ€μ½ν(Static scope)λΌ λΆλ₯΄κΈ°λ νλ€.
function makeFunc() {
const word = "Hello"
const name = "Elice";
function displayName() {
console.log(word+' '+name);
}
return displayName;
}
const myFunc = makeFunc();
myFunc(); //Hello Elice
λͺ¨λ μλ°μ€ν¬λ¦½νΈ ν¨μλ μ μΈ(μμ±)λ λΉμμ ν΄λ‘μ κ° νμ±λμ΄ μ£Όλ³ νκ²½, λ μ컬 μ€μ½νλ₯Ό κΈ°μ΅ν μ μκ² λκΈ° λλ¬Έμ ν¨μ μ€μ½ν λ°μ μμμλ λΆκ΅¬νκ³ μ μΆλ ₯λλ€.
'Elice > Study' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JavaScript] λμ€νΈλμ²λ§ ν λΉ (0) | 2024.03.21 |
---|---|
[JavaScript] λλ¨Έμ§ λ§€κ° λ³μμ ꡬ문 (0) | 2024.03.21 |
[React] SPA, λΌμ°ν (0) | 2024.03.15 |
[JavaScript/React] νλ‘ν νμ (0) | 2024.03.15 |
[React] 리μ‘νΈ λμ μ리 (0) | 2024.03.15 |