TypeScript Tutorial.14

ansunny1170·2022년 5월 31일
0

w3schools.TS Tutorial

목록 보기
14/18
post-thumbnail

TS Basic Generics

제네릭을 사용하면 사용하는 타입을 명시적으로 정의할 필요가 없는 클래스, 함수 및 type Aliases(타입 별칭)을 만드는 데 사용할 수 있는 '타입 변수'를 만들 수 있다.

Generics를 사용하면 재사용 가능한 코드를 더 쉽게 작성할 수 있다.

Functions

함수가 있는 제네릭은 사용 및 반환된 형식을 보다 정확하게 나타내는 보다 일반화된 메서드를 만드는 데 도움이 된다.

TS는 또한 함수 매개변수에서 일반 매개변수의 타입을 유추할 수 있다.

Classes

제네릭은 Map과 같은 일반화된 클래스를 만드는 데 사용할 수 있다.

TS는 생성자 매개변수에서 사용되는 경우 일반 매개변수의 타입을 유추할 수도 있다.

Type Aliases

타입 별칭의 제네릭을 사용하면 더 재사용 가능한 타입을 만들 수 있다.

이것은 다음과 같은 구문예시를 사용하는 인터페이스에서도 작동한다. interface Wrapped<T> {

Default Value

제네릭에는 다른 값이 지정되거나 유추되지 않은 경우 적용되는 기본값이 할당될 수 있다.

class NamedValue<T = string> {
  private _value: T | undefined;

  constructor(private name: string) {}

  public setValue(value: T) {
    this._value = value;
  }

  public getValue(): T | undefined {
    return this._value;
  }

  public toString(): string {
    return `${this.name}: ${this._value}`;
  }
}

let value = new NamedValue('myNumber');
value.setValue('myValue');
console.log(value.toString()); // myNumber: myValue

Extends

제네릭에 제약 조건을 추가하여 허용되는 것을 제한할 수 있다. 제약 조건을 사용하면 제네릭 형식을 사용할 때 보다 구체적인 형식에 의존할 수 있다.

default value(기본값)와 결합될 수 있다.

profile
공정 설비 개발/연구원에서 웹 서비스 개발자로 경력 이전하였습니다. Node.js 백엔드 기반 풀스택 개발자를 목표로 하고 있습니다.

0개의 댓글