리터럴 타입

const userName1 = "Bob";
let userName2: string | number = "Tom";
userName2 = 3;

type Job = "police" | "developer" | "teacher";

interface User {
    name : string;
    job : Job;
}

const user:User = {
    name: "Bob",
    job: "developer"
} 

interface HighSchoolStudent {
    name: string;
    grade: 1 | 2 | 3;  // => 유니온 타입
}

 

 

유니온 타입

interface Car {
    name: "car";
    color: string;
    start(): void;
}

interface Mobile {
    name: "mobile";
    color: string;
    call(): void;
}


function getGift(gift: Car | Mobile){
    console.log(gift.color);
    if(gift.name === "car"){
    gift.start();
    }else{
        gift.call(); 
    }
}

 

교차 타입

interface Car {
    name: string;
    start(): void;
}

interface Toy {
    name: string;
    color: string;
    price: number;
}

const toyCar: Toy & Car = {
    name : "타요",
    start(){},
    color:"blue",
    price:1000,

}

'TypeScript > TypeScript Basic' 카테고리의 다른 글

TypeScript 제네릭  (0) 2024.03.13
TypeScript 추상 class  (0) 2024.03.13
TypeScript 함수  (0) 2024.03.12
TypeScript 인터페이스  (0) 2024.03.12
TypeScript 기본 타입 정리  (0) 2024.03.11

+ Recent posts