기본형태
각각 파라미터에 타입 선언, 리턴 타입도 선언
// JavaScript
function jsAdd(num1, num2) {
return num1 + num2;
}
// TypeScript
function tsAdd(num1: number, num2: number): number {
return num1 + num2;
}
Optional Parameter
옵셔널 문법을 사용한 함수
// 파라미터명 옆 물음표로 해당 파라미터의 사용유무를 선택할 수 있음
function printName(firstName: string, lastName?: string) {
console.log(firstName);
console.log(lastName);
}
printName('Steve', 'Jobs');
printName('Ellie');
function printName2(firstName: string, lastName: string) {
console.log(firstName);
console.log(lastName);
}
printName2('Steve'); // error
Default Parameter
function printMessage(message: string = 'default message') {
console.log(message);
}
printMessage(); // default message
파라미터에 값을 미리 넣어두면 해당 파라미터를 삽입하지않아도 컴파일 에러가 나지않음
Rest parameter
스프레드 문법(Spread Syntax)을 사용하여 만든 함수
function addNumbers(...numbers: number[]): number {
return numbers.reduce((a, b) => a + b);
}
console.log(addNumbers(1, 2));
console.log(addNumbers(1, 2, 3, 4));
console.log(addNumbers(1, 2, 3, 4, 5, 0));
파라미터의 개수가 정해져있지않고 다수의 파라미터를 묶어서 배열로 만들어줌
Spread
- 1.확산되다
- 2.퍼지다
- 3.퍼뜨리다
- 4.번지다
- 5.유포시키다
'개발언어 > TypeScript' 카테고리의 다른 글
교차타입 (Intersection Types) (0) | 2021.04.12 |
---|---|
식별 유니온 타입 (Discriminated Unions Type) (0) | 2021.04.12 |
타입 에일리어스 (Type Alias), 유니온 타입 (Union Type) (0) | 2021.04.10 |
배열 (Array), 튜플 (Tuple) (0) | 2021.04.10 |
원시타입 (primitive type) (0) | 2021.04.10 |
댓글