π μ μΉ μ°μ°μμ νμΉ μ°μ°μμ λν΄ μμ보μ
κ°λ μ체λ μ΄λ €μ΄ νΈλ μλκ³ λ΄μ©λ λ§μ§ μμλ° κΈ°λ‘μ λ¨κΈ°λ μ΄μ λ μκ³ λ¦¬μ¦ λ¬Έμ λ₯Ό νλ€ λ³΄λ©΄ ν·κ°λ¦¬λ κ²½μ°κ° μκΈ° λλ¬Έμ΄λ€. μ μΉ μ°μ°μμ νμΉ μ°μ°μλ₯Ό μ νμ©ν λ¬Έμ λ ν¬ ν¬μΈν° κ°λ μ νμ©ν λ λ°°μ΄ ν©μΉκΈ° λ¬Έμ μλ€.
- μ μΉμ°μ°μ(prefix form): μ°μ°μ(
++x
,--x
)κ° λ³μ μμ μ€λκ²½μ° μ μΉ ννμ΄κ³ ,μ¦κ°/κ°μ
κ° λ¨Όμ μ΄λ£¨μ΄μ§κ³ κ°μ 리ν΄ν¨. - νμΉ μ°μ°μ(postfix form): μ°μ°μ(
x++
,x--
)κ° λ³μ λ€μ μ€λκ²½μ° νμΉ ννμ΄κ³ ,μ¦κ°/κ°μ
μ΄μ μ λ¨Όμ κ°μ 리ν΄ν¨.
μμμ μ΄ν΄λ³Έ κ°λ
μ ν λλ‘ μ κΉ λ¬Έμ λ₯Ό νμ΄λ³΄μ. μ΄λ€ λ΅μ΄ λμ¬μ§ νλ² μκ°ν΄λ³΄μ. μ λͺ¨λ₯΄κ² λ€λ©΄ λλκ·Έλ₯Ό ν΄λ³΄μ. μμ 1
μ counter
μ a
μ κ° λͺ¨λ 2λ€. μλνλ©΄ ++counter
λ‘ μΈν΄ counter
λ κ°μ΄ 1μ¦κ°νκ³ , a
λ μ¦κ°ν κ°μ λ³μλ‘ μ μ₯νκΈ° λλ¬Έμ΄λ€. μμ 2
λ μ‘°κΈ λ€λ₯΄κ² counter
μ κ°μ 1, b
μ κ°μ 2μ΄λ€. μλνλ©΄ counter++
λ counter
λ³μμ κ°μ λ³ν¨μ΄ μκ³ b
μ λ³μλ§ counter
μμ 1 λν κ°μ λ³μλ‘ μ§μ νκΈ° λλ¬Έμ΄λ€.
// μμ 1
let counter = 1;
let a = ++counter;
console.log(counter, a);
ππ½ 2 2
// μμ 2
let counter = 1;
let b = counter++;
console.log(counter, b);
ππ½ 1 2
λκΈ