[typescript] 정적 메서드와 인스턴스 메서드를 사용하여 데이터 변환하기

TypeScript는 정적(static) 메서드와 인스턴스(instance) 메서드를 활용하여 데이터 변환을 쉽게 할 수 있습니다. 정적 메서드는 클래스의 인스턴스를 생성하지 않고 직접 호출할 수 있으며, 인스턴스 메서드는 클래스의 인스턴스를 통해 호출됩니다.

이 블로그에서는 TypeScript 클래스에서 정적 메서드와 인스턴스 메서드를 사용하여 데이터를 변환하는 방법에 대해 알아보겠습니다.

정적 메서드(Static Methods)

정적 메서드는 클래스의 인스턴스 생성 없이 직접 호출할 수 있습니다. 일반적으로 데이터 변환, 유틸리티 함수, 팩토리 메서드 등을 정의하는 데 사용됩니다.

아래는 DataTransformer 클래스의 예제 정적 메서드입니다.

class DataTransformer {
  static toUpperCase(input: string): string {
    return input.toUpperCase();
  }
}

위의 예제에서 toUpperCaseDataTransformer 클래스의 정적 메서드로, 문자열을 받아서 대문자로 변환하여 반환합니다.

인스턴스 메서드(Instance Methods)

인스턴스 메서드는 클래스의 인스턴스를 통해 호출됩니다. 인스턴스 메서드를 사용하여 클래스가 특정 데이터타입을 가지고 작업할 수 있도록 할 수 있습니다.

아래는 DataFormatter 클래스의 예제 인스턴스 메서드입니다.

class DataFormatter {
  constructor(private data: string) {}

  toUpperCase(): string {
    return this.data.toUpperCase();
  }
}

위의 예제에서 toUpperCaseDataFormatter 클래스의 인스턴스 메서드로, 인스턴스가 가지고 있는 문자열을 대문자로 변환하여 반환합니다.

데이터 변환 예제

이제 정적 메서드와 인스턴스 메서드를 사용하여 데이터를 변환하는 예제를 살펴보겠습니다.

const inputString = "hello, world";

// 정적 메서드 사용
const upperCaseString = DataTransformer.toUpperCase(inputString);
console.log(upperCaseString); // 출력: "HELLO, WORLD"

// 인스턴스 메서드 사용
const dataFormatter = new DataFormatter(inputString);
const upperCasedString = dataFormatter.toUpperCase();
console.log(upperCasedString); // 출력: "HELLO, WORLD"

위의 예제에서는 DataTransformer 클래스의 정적 메서드와 DataFormatter 클래스의 인스턴스 메서드를 사용하여 문자열을 대문자로 변환하였습니다.

정적 메서드와 인스턴스 메서드를 사용하여 데이터 변환을 수행함으로써, 코드의 가독성과 유지보수성을 향상시킬 수 있습니다.

이상으로 TypeScript의 정적 메서드와 인스턴스 메서드를 사용하여 데이터를 변환하는 방법에 대해 알아보았습니다. 감사합니다!

References