[TypeScript] νƒ€μž… ν‘œμ‹œ

[원본 링크]

λ³€μˆ˜ 선언은 뭐 μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œ ν•˜λ˜λŒ€λ‘œ 해도 되긴 ν•œλ‹€.
그런데 그러면 이걸 μ“°λŠ” μ΄μœ κ°€ μ—†μ§€ μ•Šμ€κ°€?

TSμ—μ„œλŠ” var을 ꢌμž₯ν•˜μ§€ μ•ŠλŠ”λ‹€.
letκ³Ό constλ₯Ό μ‚¬μš©ν•˜λŠ” 것이 μ’‹λ‹€.

그리고 νƒ€μž…μ„ ν‘œμ‹œν•˜λ €λ©΄ μ΄λŸ°μ‹μœΌλ‘œ ν•œλ‹€.
let num: number = 33;

μœ„μ—μ„œ numberκ°€ λ°”λ‘œ νƒ€μž…μ΄λ‹€.
μ΄λ ‡κ²Œ μ μ–΄λ†“μœΌλ©΄ νƒ€μž… 검사λ₯Ό μˆ˜ν–‰ν•΄μ„œ μˆ«μžκ°€ μ•„λ‹Œ 값이 λ“€μ–΄κ°„λ‹€λ©΄ 였λ₯˜λ‘œ μž‘μ•„μ€€λ‹€.

ν•¨μˆ˜λ„ 별 차이 μ—†λ‹€.
numberλ₯Ό ν•˜λ‚˜ λ°›μ•„μ„œ numberλ₯Ό λ°˜ν™˜ν•˜λŠ” ν•¨μˆ˜λ‹€.
**function inc(num: number): number
{
**Β Β Β  return num+1;

}

κΈ°λ³Έ νƒ€μž…λ“€λ‘  λŒ€κ°• 이런게 μžˆλ‹€.

number ->μˆ«μžν˜• νƒ€μž…
string ->λ¬Έμžμ—΄ νƒ€μž…
boolean ->논리 νƒ€μž…
T[] ->T의 λ°°μ—΄ νƒ€μž…
[T,T2] ->T와 T2둜 된 νŠœν”Œ νƒ€μž…
any ->νƒ€μž…κ²€μ‚¬ μ•ˆν•¨
T | T2 ->T와 T2의 곡용체 νƒ€μž…
void ->λ°˜ν™˜ μ•ˆν•¨(ν•¨μˆ˜ λ°˜ν™˜νƒ€μž…)


그리고 μ„ μ–Έκ³Ό λ™μ‹œμ— 값을 μ΄ˆκΈ°ν™”ν•˜λ˜, νƒ€μž…μ„ λͺ…μ‹œν•˜μ§€ μ•ŠμœΌλ©΄ νƒ€μž…μ„ μΆ”λ‘ ν•΄μ„œ λΆ€μ—¬ν•΄μ€€λ‹€κ³  ν•œλ‹€.
근데 이러면 자슀 μ™„μ „ ν˜Έν™˜μ΄ λͺ»λ˜μ§€ μ•Šλ‚˜...? μ—λŸ¬λ‚  μˆ˜λ„ μžˆμ„ν…λ°.
λͺ¨λ₯΄κ² λ‹€.