[하루만에 정복해보는 TS] type 설정해보기

2023. 6. 18. 17:05Trip to TypeScript

이번에 type을 정의하는 방식에 대해 이야기보려고한다.

 

const PlayerChoi : {
	name:string,
    age?:number
} = {
	name: "choi",
    age: 25
}

const PlayerInnbo : {
	name:string,
    age?:number
} = {
	name: "innbo",
    age: 31
}

 

이렇게 오브젝트에 대한 타입 정의하였다고 가정하자. 하지만, 일일히 오브젝트 타입은 비효율적이기에 아래와 같이 타입을 선언하여 정리해줄 수 있다.

 

type Player = {
	name: string,
    age?: age
}

const PlayerChoi: Player = {
	name: choi,
    age: 25
}

 

타입 안에 이미 선언한 타입을 넣어주는 것도 가능하다.

 

type Age = number;
type Player = {
	name: string,
    age?: Age,
    position: string
}

 

함수에서는 어떨까?

 

function footballer(backnum: number) {
	return {
    	backnum
    }
}

매개변수에서 지정된 타입은 고스란히 반환값에도 적용되어 타입을 지켜야한다. 

 

const kes = footballer(10)
kes.position = "PlayerMaker"

 

 

그럼 위와 같이 함수에서 지정된 값이 아닌 값을 넣어주면 어떻게 해야할까? 리턴값의 type을 알려주면 된다.

 

type Age = number;
type Player = {
	name: string,
    age?: Age,
    position: string
}

function footballer(backnum: number) : Player {
	return {
    	backnum
    }
}

const kes = footballer(10)
kes.position = "PlayerMaker"