
β
κ°λ
π κ°μ₯ κΈ°λ³Έμ μΈ νμ
let num: number = 10;
let str: string = "hello";
let isDone: boolean = true;
β μ’ λ₯
number π μ«μ
string π λ¬Έμμ΄
boolean π true / false
null
undefined
β οΈ μ£Όμ (μμ΄λ³΄ ν¬μΈνΈ)
β JSμ²λΌ λ§ μ°λ©΄ μλ¨
let num = "10"; // β μ«μ μλ
β
λ°°μ΄
π κ°μ νμ
μ¬λ¬ κ°
let arr: number[] = [1, 2, 3];
β
νν (Tuple)
π κΈΈμ΄ + μμ + νμ
κ³ μ
let user: [string, number] = ["kim", 20];
β οΈ μ£Όμ
user[0] = 10; // β string μ리μ
π μΈμ μ°λ?
π API μλ΅, μ’ν λ°μ΄ν° λ±
π μμκ° μ€μν κ²½μ°
β κΈ°λ³Έ νν
let user: {
name: string;
age: number;
} = {
name: "kim",
age: 20
};
β οΈ μ£Όμ
β μμ± λΉ μ§λ©΄ μλ¬
let user = {
name: "kim"
}; // β age μμ
β
κ°λ
π νμ
μ μ΄λ¦ λΆμ΄κΈ°
type User = {
name: string;
age: number;
};
π μ¬μ¬μ© κ°λ₯ π
let user1: User = { name: "kim", age: 20 };
;
π μ μ°λ?
π μ½λ κΉλ + μ¬μ¬μ©
β
κ°λ
π ν€ μ΄λ¦μ λͺ¨λ₯Ό λ μ¬μ©νλ νμ
type User = {
[key: string]: string;
};
β μ¬μ© μμ
let user: User = {
name: "kim",
city: "seoul"
};
β οΈ μ£Όμ
π λͺ¨λ κ° νμ
μ΄ κ°μμΌ ν¨
type User = {
[key: string]: string;
};
let user = {
name: "kim",
age: 20 // β number μλ¨
};
β
κ°λ
π μ ν΄μ§ κ° μ§ν©
enum Role {
ADMIN,
USER
}
π λ¬Έμμ΄ enum
enum Role {
ADMIN = "admin",
USER = "user"
}
β
κ°λ
π μ무거λ νμ©
let data: any = "hello";
β οΈ λ¬Έμ μ
π νμ
κ²μ¬ μν¨ (μν)
β
κ°λ
π anyλ³΄λ€ μμ
let data: unknown = "hello";
β μ¬μ©λ²
if (typeof data === "string") {
data.toUpperCase();
}
β
κ°λ
π λ°νκ° μμ
function hello(): void {
console.log("hello");
}
β
κ°λ
π μ λ λ°ν μν¨
function error(): never {
throw new Error();
}
| νμ | μ€λͺ |
|---|---|
| μμνμ | κΈ°λ³Έ νμ |
| λ°°μ΄ | κ°μ νμ λ¬Άμ |
| νν | μμ + νμ κ³ μ |
| κ°μ²΄ | ꡬ쑰 μ μ |
| νμ λ³μΉ | νμ μ΄λ¦ μ§μ |
| μΈλ±μ€ μκ·Έλμ² | ν€ λͺ¨λ₯Ό λ |
| Enum | κ° λ¬ΆκΈ° |
| Any | μ무거λ (μν) |
| Unknown | μμ ν any |
| Void | return μμ |
| Never | λ μλ¨ |
any λ¨λ° β
π νμ
μ€ν¬λ¦½νΈ μλ―Έ μ¬λΌμ§
κ°μ²΄ νμ μμ μμ± λΉ λ¨λ¦Ό β
unknown λ°λ‘ μ¬μ© β
π λ°λμ νμ
체ν¬
ννμ λ°°μ΄μ²λΌ μ¬μ© β
π μ²μμ μ΄λ κ² κΈ°μ΅νμ
any β
unknown β
type μ κ·Ή μ¬μ© π
π νμ μ€ν¬λ¦½νΈλ βκ°μ ννλ₯Ό 미리 μ μν΄μ μμ νκ² λ§λλ λꡬβ