const player : object = {
  name : 'kim'
}

player.name // error

// ???

// player 명단에 나이가 적혀있는 선수와 적혀있지 않은 선수가 있을 때는 어떻게 해야하지?
const player : {
  name : string,
  age? : number
} = {
  name : 'kim'
}

if( 25 < player.age){
 // error => player.age가 undefined 일 수 있기 때문에 
}

// 그럼 어떻게 해야함?
// 이렇게 하면 됨
if(player.age && 25 < player.age){
}

선수 명단이 엄청 많아진다면?!

Alias 타입을 쓰자

type FootballPlayer = {
  name : string,
  age? : number
}

const son : FootballPlayer = {
  name : 'son'
  age : '29'
}

const kane : FootballPlayer = {
  name : 'kane'
  age : '28'
}

새로 영입된 선수가 있다면 함수를 만들어 관리해보자

function SignFootballPlayer(name : string) : FootballPlayer {
  return {
    name
  }
} 

SignFootballPlayer('perisic')