TypeScript 함수 작성법
function split(input: string): string[] {
return input.split('');
}
TypeScript 에서는 다음과 같이 함수를 작성할 수 있다. 우선 들어오는 입력
input : string을 보면 매개변수 str과 그 형태가 어떤 것인지 알 수 있다.
그리고 뒤에 :string [] 뜻은 출력으로 어떤 형태가 나오는 건지 미리 선언 할 수 있게 된다.
let fc : Function = function() { };
let fc : (string) => string[] = split;
물론 미리 어떤 식의 함수를 만들 것인지도 이렇게 선언할 수 있다. 보면 Function인터페이스가 내장되어 있기 때문에 위 처럼 fc : Function으로 작성하면 함수만 할당 할 수 있다. 그러나 여기서 한 단계 나아가서 fc : (string) 이런 식으로 사용하면
fc = function(input : string) : string[] {
return input.split()
}
위 처럼 인풋값과 출력값을 맞추지 않으면 에러가 발생 되는 것을 알 수 있다.
TypeScript 오버로드
자바에서도 종종 사용 했지만 오버로드란 이름은 같지만 매개변수 타입과 반환 타입이 다른 여러 함수를 가질 수 있는 것을 말한다.
function minus(a: string, b: string): string; // 함수 선언
function minus(a: number, b: number): number; // 함수 선언
function minus(a: any, b: any): any { // 함수 구현
return a + b;
}
minus('hello ', 'world~');
minus(1, 2);
minus('hello ', 2); // Error - No overload matches this call.
위 예제코드를 보면 각각의 타입을 받고 싶은 부분을 먼저 선언을 진행하고 함수 구현부분에서는 any를 사용하여 함수를 완성 시킨것을 볼 수 있다. 오버로드는 매개변수의 type만 다르고 동작은 동일할 때 코드를 줄이고자 할 때 사용한다.
'핸드메이드 프로그램 > 실시간 코인가격 알림 ( React native )' 카테고리의 다른 글
React Native에서 typescript 사용하기 (0) | 2021.08.19 |
---|---|
TypeScript 제네릭 (0) | 2021.08.10 |
'decorators-legacy' isn't currently enabled 오류 해결 (0) | 2021.07.26 |
기본적인 화면 구성 (0) | 2021.07.26 |
React-native 설치 및 세팅 (0) | 2021.07.24 |
댓글