[typescript] 함수의 리턴 타입이 객체인 경우

TypeScript에서 함수의 리턴 타입이 객체인 경우를 다루어 보겠습니다. 객체의 구조를 정확히 알고 있다면, 해당 객체의 타입을 명시하여 함수의 리턴 타입을 설정할 수 있습니다. 이를 통해 코드의 가독성과 유지보수성을 향상시킬 수 있습니다.

객체 타입 선언

먼저, 함수가 반환할 객체의 타입을 선언합니다. 예를 들어, 이름과 나이를 가진 객체를 선언하고 싶다면 다음과 같이 작성할 수 있습니다.

type Person = {
  name: string;
  age: number;
};

함수의 리턴 타입 명시

이제 함수에서 해당 객체를 반환할 때, 리턴 타입으로 위에서 선언한 객체 타입을 명시합니다.

function createPerson(name: string, age: number): Person {
  return { name, age };
}

위의 예제에서 createPerson 함수는 Person 타입을 리턴한다는 것을 명시적으로 나타내고 있습니다.

객체 리터럴 타입 추론

TypeScript는 객체 리터럴을 통해 타입을 추론하므로, 함수의 리턴값이 객체 리터럴인 경우 타입을 따로 선언하지 않아도 됩니다.

function createPerson(name: string, age: number) {
  return { name, age };
}

위의 예제에서 TypeScript는 { name: string, age: number } 타입을 자동으로 추론합니다.

이와 같이 TypeScript에서 함수의 리턴 타입이 객체인 경우, 명시적으로 객체 타입을 선언하거나 객체 리터럴을 통해 타입을 추론할 수 있습니다.

참고문헌: