함수에 들어갈 파라미터나 리턴에도 타입 지정이 가능한데,
함수 타입도 type키워드를 사용해 type alias가 가능하다.
type NumOut = (x : number, y : number) => number;
let ABC : NumOut = function(x, y) {
return x + y
}
이렇게 사용할 수 있다.
이러면 귀찮게 매번 함수마다 타입지정 안해도 됨 ㅇㅇ
싫으면 원래대로 직접해도 됨
object 안에 함수도 넣을 수 있다.
let user = {
name : 'kim',
age : 30,
plusOne (x){
return x + 1
},
changeName : () => {
console.log('안녕')
}
}
user.plusOne(1);
user.changeName();
plusOne하고 changeName을 object안에 넣었다.
arrow function, 걍 함수 다 넣을 수 있다.
넣은거 다 똑같이 점찍어 사용 ㅇㅇ
이런거 타입 지정하려면?
type UserType = {
name : string,
age : number,
plusOne : (x: number)=>number,
changeName : () => void,
}
let user : UserType = {
name : 'kim',
age : 30,
plusOne (x){
return x + 1
},
changeName : () => {
console.log('안녕')
}
}
user.plusOne(1);
user.changeName();
이런 식으로 하면됨