
νμ
μ€ν¬λ¦½νΈλ?
TypeScriptλ μ»΄νμΌ-νμ νμ
κ²μ¬μκ° μλ JavaScriptμ λ°νμμ
λλ€.
- νμ
μ€ν¬λ¦½νΈλ μλ°μ€ν¬λ¦½νΈμ νμ
μ λΆμ¬ν μΈμ΄λ€.
- μ μ νμ
κ²μ¬μ λ‘μ νλ‘κ·Έλ¨μ μ€νμν€κΈ° μ μ κ°μ μ’
λ₯λ₯Ό κΈ°λ°μΌλ‘ νλ‘κ·Έλ¨μ μ€λ₯λ₯Ό μ°Ύλλ€.
- μλ°μ€ν¬λ¦½νΈ μ½λμ λ°νμ νΉμ± μ μ λ λ³νμν€μ§ μλλ€. νμ
μ€ν¬λ¦½νΈμ μ»΄νμΌλ¬κ° μ½λ κ²μ¬λ₯Ό λ§μΉλ©΄ νμ
μ μμ ν΄μ κ²°κ³Όμ μΌλ‘ 'μ»΄νμΌλ' μ½λλ₯Ό λ§λ λ€. μ¦ μ½λκ° νλ² μ»΄νμΌλλ©΄, κ²°κ³Όλ‘ λμ¨ μΌλ° JS μ½λμλ νμ
μ λ³΄κ° μλ€.
- TypeScriptλ Javascriptμ μμ λ μ΄μ΄ λ€. Javascriptμ κΈ°λ₯μ μ 곡νλ©΄μ κ·Έ μμ μ체 λ μ΄μ΄λ₯Ό μΆκ°νλ€. μλ°μ€ν¬λ¦½νΈλ μμνμ
(string, number, object, undefined λ±)μ κ°μ§κ³ μμ§λ§, μ 체 μ½λλ² μ΄μ€μ μΌκ΄λκ² ν λΉλμλμ§λ 미리 νμΈν΄μ£Όμ§ μλλ€. νμ
μ€ν¬λ¦½νΈλ μ΄ λ μ΄μ΄λ‘μ λμνλ€.
- ν΄λμ€, μΈν°νμ΄μ€, λͺ¨λ λ±μ κ°λ ₯ν κΈ°λ₯μ μ 곡νλ©°, μμν κ°μ²΄ μ§ν₯ μ½λ λ₯Ό μμ±ν μ μλ€.
μ₯μ
μλ¬μ μ¬μ λ°©μ§
ν¨μ, μ»΄ν¬λνΈ λ±μ νμ
μ μΆλ‘ ν μ μμ΄ μ½λλ₯Ό μ€ννμ§ μμλ IDE μμμ λ°λ‘ μ μ μλ€.
μ½λ κ°μ΄λ λ° μλ μμ±
μλμμ±μ΄ κ΅μ₯ν μλλ€. ν¨μλ₯Ό μ¬μ© ν λ ν΄λΉ ν¨μκ° μ΄λ€ νλΌλ―Έν°λ₯Ό νμλ‘ νλμ§, κ·Έλ¦¬κ³ μ΄λ€ κ°μ λ°ννλμ§ μ½λλ₯Ό λ°λ‘ μ΄μ΄λ³΄μ§ μμλ μ μ μλ€.
νλ‘κ·Έλ¨ λΆλΆ κ°μ λ λͺ
νν ν΅μ
리μ‘νΈ μ»΄ν¬λνΈμ κ²½μ° ν΄λΉ μ»΄ν¬λνΈλ₯Ό μ¬μ©νκ² λ λ propsμ 무μμ μ λ¬ν΄μ€μΌνλμ§, JSXλ₯Ό μμ±νλ κ³Όμ μμ λ°λ‘ μ μ μκ³ , μ»΄ν¬λνΈ λ΄λΆμμλ μμ μ propsλ stateμ μ΄λ€ κ°μ΄ μλμ§, reduxμ store μμ μ΄λ€ μνκ° λ€μ΄μλμ§ λ°λ‘ μ μ μλ€.
νμ
μ€ν¬λ¦½νΈ νλ‘μ νΈ μμνκΈ°
- νμ
μ€ν¬λ¦½νΈ νμΌ μμ± λ° μμ±
.ts νμ₯μ
function sum(a: number, b: number): number {
return a + b;
}
sum(10, 20);
- νμ
μ€ν¬λ¦½νΈ μ€μΉ
$ npm i typescript -g
- μλ°μ€ν¬λ¦½νΈ μ»΄νμΌ
$ tsc index.ts


νμ
μ€ν¬λ¦½νΈ μ€μ νμΌ μ΅μ
tsconfig.json
μμ]
{
"compilerOptions": {
"allowJs": true,
"checkJs": true,
"noImplicitAny": true
}
}
π referece