πΆ λ³μ
μ»΄ν¨ν°μμ μ°μ°μ μνν λ λͺ¨λ κ°μ λ©λͺ¨λ¦¬μ μ μ₯λ©λλ€. μλ₯Ό λ€μ΄, ``10 + 20 = 30``μ΄λΌλ μ°μ°μ μ²λ¦¬νκΈ° μν΄ CPUλ λ©λͺ¨λ¦¬μ μ μ₯λ κ°μ κ°μ Έμ μ°μ°ν©λλ€. μ°μ° κ²°κ³Όλ₯Ό μ μ₯νκ³ μ¬μ¬μ©νκΈ° μν΄μ λ©λͺ¨λ¦¬ μ£Όμμ μ κ·Όν΄μΌ νλλ°, μ΄λ₯Ό μν΄ λ³μλ₯Ό μ¬μ©ν©λλ€.
λ³μλ κ°μ μ κ·ΌνκΈ° μν΄ μ¬μ©λλ κ³ μ ν μ΄λ¦μ λλ€. μ΄λ λ©λͺ¨λ¦¬ μ체λ₯Ό μ§μΉνκ±°λ λ©λͺ¨λ¦¬ μ£Όμμ μ κ·ΌνκΈ° μν μ΄λ¦μ μλ―ΈνκΈ°λ ν©λλ€. λ³μμ λΆμ¬μ§ μ΄λ¦μ λ³μλͺ , μ μ₯λ κ°μ λ³μκ°μ΄λΌ λΆλ¦ λλ€. λ³μλ₯Ό μ¬μ©νλ κ³Όμ μλ λ€μκ³Ό κ°μ λ¨κ³κ° μμ΅λλ€.
- ν λΉ : λ³μμ κ°μ μ μ₯νλ κ³Όμ
- μ°Έμ‘° : λ³μμ μ μ₯λ κ°μ μ¬μ¬μ©νλ κ³Όμ
πΆ μλ³μ
μλ³μλ λ©λͺ¨λ¦¬μ μ μ₯λ κ°μ μλ³νκΈ° μν΄ μ¬μ©νλ κ³ μ ν μ΄λ¦μ λλ€. λ³μλͺ λΏλ§ μλλΌ ν¨μλͺ , ν΄λμ€λͺ λ±λ μλ³μμ ν¬ν¨λ©λλ€. μλ³μλ λ©λͺ¨λ¦¬μ μ μ₯λ κ°μ μλ³νκΈ° μν΄ λ©λͺ¨λ¦¬ μ£Όμμ 맀νλμ΄μΌ ν©λλ€. λ°λΌμ μλ³μλ κ°μ΄ μλ λ©λͺ¨λ¦¬ μ£Όμλ₯Ό κΈ°μ΅ν©λλ€.
πΆ λ³μ μ μΈ
λ³μλ₯Ό μ μΈνλ κ²μ μλ‘μ΄ λ³μλ₯Ό λ§λλ κ³Όμ μ λλ€. μ΄ κ³Όμ μμ λ©λͺ¨λ¦¬ 곡κ°μ ν보νκ³ , ν보λ λ©λͺ¨λ¦¬ μ£Όμμ λ³μ μ΄λ¦μ μ°κ²°ν©λλ€.
λ³μ μ μΈμλ ``var``, ``let``, ``const`` ν€μλλ₯Ό μ¬μ©ν©λλ€. λ³μ μ μΈ μ μ΄κΈ°νκ° μλμΌλ‘ μ΄λ£¨μ΄μ§λ©°, κ°μ ν λΉνμ§ μλλΌλ κΈ°λ³Έμ μΌλ‘ ``undefined`` κ°μ κ°κ² λ©λλ€.
πΆ λ³μ μ μΈμ μ€ν μμ κ³Ό λ³μ νΈμ΄μ€ν
λ³μ μ μΈμ λ°νμ μ μ μ€νλ©λλ€. λ°νμ μ , μμ€μ½λ νκ° κ³Όμ μμ λ³μλ ν¨μ μ μΈλ¬Έμ΄ λ¨Όμ μ€νλλλ°, μ΄λ₯Ό νΈμ΄μ€ν (Hoisting)μ΄λΌκ³ ν©λλ€. μ΄λ‘ μΈν΄ λ³μλ μ½λ λ΄ μ΄λμ μμΉνλ μκ΄μμ΄ μ°Έμ‘°κ° κ°λ₯ν΄μ§λλ€.
console.log(score); // undefined
var score = 80; // λ³μ μ μΈκ³Ό κ°μ ν λΉ
console.log(score); // 80
πΆ κ°μ ν λΉκ³Ό μ¬ν λΉ
ν λΉμ μ μΈλ λ³μμ κ°μ μ μ₯νλ κ²μ μλ―Ένλ©°, λ°νμμ μ€νλ©λλ€. μ΄κΈ° λ³μ μ μΈ μ ``undefined``λ‘ μ΄κΈ°νλ κ°μ ν λΉ μ°μ°μλ₯Ό ν΅ν΄ μλ‘μ΄ κ°μ κ°μ§κ² λ©λλ€.
ν λΉλ κ°μ λ€μ λ€λ₯Έ κ°μΌλ‘ λ°κΎΈλ κ²μ μ¬ν λΉμ΄λΌκ³ ν©λλ€. μ΄λ¬ν μ΄μ λ‘ λ³μλ₯Ό "λ³νλ€"λ μλ―Έμ λ³μλΌκ³ λΆλ¦ λλ€. μ¬ν λΉμ΄ μ΄λ£¨μ΄μ§λ©΄ μ΄μ κ°μ λ©λͺ¨λ¦¬ μ΄λκ°μ μ μ₯λλ©°, Garbage Collectorμ μν΄ μμ λ©λλ€.
πΆ μλ³μ λ€μ΄λ° κ·μΉ
μλ³μλ κ°μ ꡬλ³νκΈ° μν΄ μ¬μ©λλ κ³ μ ν μ΄λ¦μΌλ‘, λ€μκ³Ό κ°μ λ€μ΄λ° κ·μΉμ λ°λΌμΌ ν©λλ€.
- νΉμ λ¬Έμλ₯Ό μ μΈν λ¬Έμ, μ«μ, μΈλμ€μ½μ΄(_), λ¬λ¬ κΈ°νΈ($)λ₯Ό ν¬ν¨ν μ μμ΅λλ€.
- μ«μλ‘ μμν μ μμ΅λλ€.
- μμ½μ΄λ μλ³μλ‘ μ¬μ©ν μ μμ΅λλ€.
λν κ°λ μ±μ λμ΄κΈ° μν΄ λͺ λͺ κ·μΉ(λ€μ΄λ° 컨벀μ )μ λ°λ₯΄λ κ²μ΄ μ’μ΅λλ€. μλ°μ€ν¬λ¦½νΈμμ λ³΄ν΅ λ³μλ ν¨μλͺ μλ μΉ΄λ© μΌμ΄μ€λ₯Ό, μμ±μ ν¨μλ ν΄λμ€ μ΄λ¦μλ νμ€μΉΌ μΌμ΄μ€λ₯Ό μ¬μ©ν©λλ€.
- μΉ΄λ© μΌμ΄μ€(Camel Case) : ``firstName``
- νμ€μΉΌ μΌμ΄μ€(Pascal Case) : ``FirstName``
'π Jero's Review > λͺ¨λ μλ°μ€ν¬λ¦½νΈ Deep Dive' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
07μ₯. μ°μ°μ (0) | 2025.02.12 |
---|---|
06μ₯. λ°μ΄ν° νμ (2) | 2025.02.12 |
05μ₯. ννμκ³Ό λ¬Έ (0) | 2025.02.11 |
02 & 03μ₯. μλ°μ€ν¬λ¦½νΈλ? (0) | 2025.02.11 |
01μ₯. νλ‘κ·Έλλ° (1) | 2025.02.11 |