[typescript] 타입 가드 함수란?

타입스크립트(TypeScript)에서 타입 가드 함수(type guard function)는 런타임에서 특정 타입의 변수를 확인하고 그 타입에 따라 다른 동작을 수행할 수 있도록 도와주는 함수입니다.

타입 가드 함수를 사용하면 코드를 더 안정적으로 만들어 주고, 타입의 안전성을 확보할 수 있습니다.

예시

function isString(value: unknown): value is string {
  return typeof value === 'string';
}

function exampleGuard(value: unknown) {
  if (isString(value)) {
    console.log(value.toUpperCase());
  } else {
    console.log("Value is not a string");
  }
}

위의 isString 함수는 value가 문자열인지 확인하는 타입 가드 함수입니다. 이를 활용하여 exampleGuard 함수는 value가 문자열인 경우에는 toUpperCase를 호출하고, 아닌 경우에는 “Value is not a string”을 출력하는 예시이다.

참고 자료