3. 자바스크립트가 가지지 못한 녀석, 타입에서 함수에 타입을 선언하는 방법에 대해서 간략하게 다뤄봤다. 이번 파트에서 타입스크립트로 함수를 선언하고 실행하는 방법에 대해 자세히 알아보자. 함수는 매개변수 명 옆에 타입을 선언할 수 있고, 리턴값에 타입을 선언할 수 있다. 리턴 타입을 기입하지 않고, 타입을 추론하게 할 수도 있다. 함수를 실행할 때는 인자에 따로 타입을 선언하지 않아도 된다. 왜냐하면, 함수의 매개변수와 인자의 타입이 호환되는지 확인하기 때문이다.
// 리턴 타입이 추론된 방식
function food1(name:string){
return 'good' + name
}
food1('chicken') //'goodchicken'
// 리턴 타입이 선언된 방식
function food1(name:string):string{
return 'good' + name
}
food1('chicken') //'goodchicken'
//리턴 타입이 추론된 방식
let food2 = function(name:string){
return 'good' + name
}
food2('chicken') //'goodchicken'
//리턴 타입이 선언된 방식
let food2 = function(name:string):string{
return 'good' + name
}
food2('chicken') //'goodchicken'
//리턴 타입이 추론된 방식
let food3 = (name:string) =>{
return 'good' + name
}
food3('chicken')//'goodchicken'
//리턴 타입이 선언된 방식
let food3 = (name:string):string =>{
return 'good' + name
}
food3('chicken')//'goodchicken'
위 예제들은 모두 리턴 값이 있다. 리턴값을 반환하고 싶지 않을 때는 void
타입을 사용할 수 있다. 3장 void 타입에서 자세히 설명되어있다.
function food(price:number):void{
console.log(price);
}
food(20000); //20000;