TypeScript κΈ°λ³Έ νμ
π TS κΈ°λ³Έ νμ
νμ
μ΄λ μλ°μ€ν¬λ¦½νΈμμ λ€λ£¨λ κ°μ ννμ λν μ€λͺ
μ
λλ€.
νμ
μ€ν¬λ¦½νΈμμμ κ°μ₯ κΈ°λ³Έμ μΈ νμ
μ μλ°μ€ν¬λ¦½νΈμ 7κ°μ§ κΈ°λ³Έ μμνμ
κ³Ό λμΌν©λλ€.
- null
- undefined
- boolean
- string
- number
- bigint
- symbol
π νμ μ λν μ΄μ (type annotation)
νμ
μ λν
μ΄μ
μ λ³μμ μ΄κΉκ°μ ν λΉνμ§ μκ³ λ λ³μμ νμ
μ μ€μ ν μ μλ λ°©λ²μ
λλ€.
λ³μμ μ΄κΉκ°μ ν λΉνλ€λ©΄, νμ
μ€ν¬λ¦½νΈλ μλμΌλ‘ νμ
μ μΆλ‘ ν©λλ€.
let user = "sujin";
μ΄ μ½λμμ νμ
μ μ§μ μλ €μ£Όμ§ μμλ νμ
μ€ν¬λ¦½νΈλ νμ
μμ€ν
μ ν΅ν΄ user
κ° string
νμ
μ΄λΌλ κ²μ μΆλ‘ ν μ μμ΅λλ€.
νμ§λ§, μ΄κΉκ°μ΄ μλ κ²½μ°μλ νμ
μ μΆλ‘ ν μ μμ΄ μλμΌλ‘ any
νμ
μΌλ‘ κ°μ£Όν©λλ€.
μ΄λ κ² μ΄κΈ°μ νμ
μ μ μΆν μ μλ λ³μλ₯Ό μ§ννλ anyλΌκ³ λΆλ¦
λλ€.
let user; // νμ
: any
user = "sujin";
user.toUpperCase(); // ok
user = 28; // νμ
: numberλ‘ μ§ν!
user.toPrecision(1); // ok
user.toUpperCase(); // Error. 'toUpperCase' does not exist on type 'number'.
user
μ νμ
μ΄ any
- string
- number
λ‘ μ§ννμ΅λλ€.
λ§μ§λ§μΌλ‘ μ§νλ νμ
μ΄ number
μ΄κΈ° λλ¬Έμ toUpperCase
λ©μλλ₯Ό νΈμΆνλ©΄ μλ¬λ₯Ό λ΄λ±μ΅λλ€.
μ΄λ κ² νμ
μ΄ κ³μ λ³ννλ©΄ ν΄λΉ λ³μκ° μ΄λ€ νμ
μ κ°μ§κ³ μλμ§ νμ μ§μ μ μκ³ , μλ¬λ₯Ό μ λ°ν΄ νμ
μ€ν¬λ¦½νΈλ₯Ό μ¬μ©νλ μ΄μ λ₯Ό μμμΌν©λλ€.
νμ μ λν μ΄μ μ λ³μμ μ΄κΉκ°μ ν λΉνμ§ μμμ λ, νμ μ νμ μ§μ μ μκ² ν©λλ€.
let user: string;
user: "sujin";
π νμ μ λν μ΄μ μ νμ μ€ν¬λ¦½νΈμλ§ μ‘΄μ¬νλ©° μ»΄νμΌ λμμ λ μλ°μ€ν¬λ¦½νΈλ‘ 볡μ¬λμ§ μμ μλ°μ€ν¬λ¦½νΈμ μ무 μν₯μ μ£Όμ§ μμ΅λλ€.
π νμ μ μ¦μ μ μΆν μ μλ λ³μμ νμ μ λν μ΄μ μ μ€μ νλ©΄ μ€λ³΅ μ€μ μ λλ€.
let user: string = "sujin";
μΆμ²
-
Learning Typescript
π¬ μ΅μ λκΈ