2021. 8. 31. 22:26γπ TIL
π Generic μ μ¬μ©νλ μ΄μ
* νμ μ€ν¬λ¦½νΈμ μ λ€λ¦μ μλ―Έν©λλ€
function returnMessage<T>(message: T): T {
return message
}
returnMessage<string>("LIM");
returnMessage<number>(100);
<T> : Type μ μλ―Έ, νμ§λ§ T λ λ€λ₯Έ μΈμ΄μμλ μ λ€λ¦μ μ μΈν λ κ΄μ©μ μΌλ‘ λ§μ΄ μ¬μ©λλ λ¨μ΄λ‘, κΌ T κ° μλ $ λ _ λ κ°λ₯νλ€ (λ°λμ T λ₯Ό μ¬μ©ν΄μΌ νλ€λ λ»μ΄ μλλ€)
<T> λ ν¨μ μ μ λ¨κ³μμ νμ
μ΄ μ ν΄μ§μ§ μμμ§λ§,
ν¨μ νΈμΆμ < > λ΄λΆμ μ ν νμ
(string, number λ±)μ TS compiler κ° μμ μκ² λλ€.
( => μλν°μμ μλμμ±μ μ¬μ©ν μ μκ² λμ΄ μμ°μ± ν₯μμλ κΈ°μ¬ν μ μλ€.)
>>> μ΄μ²λΌ, ν κ°μ§ κ³ μ λ νμ
λ³΄λ€ μ¬λ¬ νμ
μ λμ μΌλ‘ μ¬μ©νλ μ»΄ν¬λνΈλ₯Ό μμ±ν λ μ¬μ©νλ κ°λ
μ΄ μ λ€λ¦μ΄λ€.
μλ°μμλ κ·Έλ κ³ , μ κΊΎμ μμ T κ° λ€μ΄μλ λ¬Έλ²μ νμ λ―μ€μλλ° μ λ€λ¦μ 곡λΆνλ©΄μ μ‘°κΈμ μΉμν΄μ§ μ μμλ€. μ λ€λ¦κΉμ§ μ λλ‘ λ°°μ°κ³ μμΌλ, μλ°μμ κ°νμ 쑰건 λλ¬Έμ μ λ¨Ήμλ κΈ°μ΅μ΄ λλ€.
μ΄λ² μ£Ό λ΄μ μ λ€λ¦ κ΄λ ¨νμ¬ ν¬μ€ν νλ λ λ½μ μ μμΌλ©΄ μ’κ² λ€. μ΄νν°λΈ νμ μ€ν¬λ¦½νΈμμ μ λλ¦μ μ¬μ©νλ©΄ λ°λ³΅μ μ€μΌ μ μλ€κ³ νλλ°, μλ§ λμ μΌλ‘ νμ μ ν λΉν μ μμ΄ μ μ°μ±μ΄ μ¦κ°νκΈ° λλ¬Έμ΄ μλκ° μΆλ€. λ΄μΌ μΆκ·Όνλ©΄ μ½μ΄λ΄μΌκ² λ€.
-
8μλ λλ¬λ€. μΌλ μ 3λΆμ 2κ° μ§λ¬λ€. λ¨μ 4λ¬μ λ 빨리 μ§λκ°κ² μ§. μ€λ κ·Έλ €λ³΄λ μ¬ν΄ λ§μ§λ§ λ μ λλ ν¬λ§μ°¬ λͺ¨μ΅μΈλ° κ³Όμ° μ€μ λ‘λ μ΄λ¨μ§ κΆκΈνλ€. μ§κΈλ μΆ©λΆν μΉμ΄νκ² μ΄κ³ μμΌλ λΆλ, μ§μΉμ§ λ§κ³ κΎΈμ€ν λμκ°κΈΈ λ°λ λΏμ΄λ€.
'π TIL' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
210905 κ°λ°κΈ°λ‘: νλ‘κ·Έλλ¨Έμ€ λ±κ΅£κΈΈ νμ΄μ¬ (0) | 2021.09.06 |
---|---|
210901 κ°λ°κΈ°λ‘: webpackμ μμ보μ (0) | 2021.09.01 |
210830 κ°λ°κΈ°λ‘: nestjs νΈλ¬λΈμν (0) | 2021.08.31 |
210827 κ°λ°κΈ°λ‘: μ΄λ ₯μλ₯Ό μ°μ (0) | 2021.08.29 |
210826 (κ°λ°)κΈ°λ‘: μ€λμ κ·Έλ₯ μΌκΈ° (0) | 2021.08.27 |