써치킴의 우당탕탕 개발 블로그

[TypeScript][ch7][Generic] Generic Basic 본문

TypeScript 합시다

[TypeScript][ch7][Generic] Generic Basic

써치킴 2022. 2. 18. 01:34
function helloBasic<T>(message: T): T {
  return message;
}

helloBasic 함수를 사용하는 2가지 방식이 있다.

 

1. 타입을 지정하는 방식

  • 지정한 타입으로만 인수로 입력할 수 있다.
// 1. 함수를 사용할 때 타입을 지정하는 방식 > 지정한 타입으로만 입력할 수 있게 제한이 됨
helloBasic<string>('Searchkim');
// helloBasic<string>(29);   // Error 발생
  • 함수 호출 시, 인수가 string형이 아니면 Error 발생

2. 타입을 지정하지 않는 방식

// 2. 타입을 지정하지 않는 방식
helloBasic('Searchkim');    // Searchkim이라는 값에 의해서 타입이 추론됨
helloBasic(29);             // 29이라는 값에 의해서 타입이 추론됨
  • 타입은 Searchkim이다.
  • 타입은 29이다.

함수 선언 시, 타입을 여러 개 지정할 수 있다!

// 함수 선언 시, 타입을 여러 개 지정할 수 있음
function helloS<T, U>(message: T, comment: U): T {
  return message;
}

// 1. 타입을 지정하는 방식
helloS<string, number>('Searchkim', 29);
// 2. 타입을 지정하지 않는 방식
helloS(26, 29);     // 타입은 26, 29이다.
Comments