TypeScript : 함수
기본 함수
숫자 매개변수와 숫자 반환값을 가진 함수 입니다.
function sum(a: number, b: number): number {
return a + b;
}
반환값이 없을 경우 void를 선언 합니다.
function doSomething() : void {
console.log('do it!');
}
function nothing() : void {
return;
}
종료가 없는 함수의 경우에는 never를 선언 합니다.
function forever() : never {
whild(true) {
// ..
}
}
function neverEnd() : never {
throw new Error('Error');
}
함수의 매개변수
선언한 매개변수는 꼭 들어가야 하며, 임의로 추가는 불가능 합니다.
필수가 아닌 매개변수는 ?로 표시 합니다.
function sum(a: number, b:number, c?:number) : number) {
return a + b + c;
)
sum(1,2,3); // 6
sum(1); // error
sum(1,2); // 3
매개변수 초기화는 js문법과 같습니다.
function sumb(a:number, b=100) : number {
return a + b;
}
sum(1, undefined); // 101
subm(1); // 101
REST 문법도 활용이 가능합니다.
function sum(a: number, ...nums: number[]): number {
const totals = 0;
for (let key in nums) {
totals += nums[key];
}
return a + totals;
}
데이터 호출 결과값으로 객체 배열 데이터도 가능합니다.
모두 같은 기능을 합니다.
function getDatas(type: string): {id: number, title: string}[] {
const contacts = [
{
id : 1,
title : 'TITLE 1'
},
{
id : 2,
title : 'TITLE 2'
}
]
return contacts;
}
function getDatas(type: string): Array<Object> {
const contacts = [
{
id : 1,
title : 'TITLE 1'
},
{
id : 2,
title : 'TITLE 2'
}
]
return contacts;
}
interface User {
id : number;
title : string
}
function getDatas(type: string): User[] {
const contacts = [
{
id : 1,
title : 'TITLE 1'
},
{
id : 2,
title : 'TITLE 2'
}
]
return contacts;
}