interface Cat{
name:string
age:number
}
const cat: Cat = {
name:'Lucy',
age:2
}
// this의 타입을 지정해주지 않으면 암시적으로 any 형식이 포함된다.
// hello 함수의 첫번째 매개변수에 this의 타입을 명시적으로 지정해주어야 한다.
// 정확하게는 매개변수가 아닌 하나의 문법으로 보는게 맞다
function hello(this: Cat, message:string){
console.log(`hello ${this.name}, {message}`)
}
// 함수나 메소드 뒤에 사용하여 어떤 대상에서 실행되는지 결정하는 메소드 call
// 실행할 함수.call(실행할 대상, 함수의 인자)
hello.call(cat, "You look so good")