[typescript] 타입스크립트 화살표 함수와 익명 함수의 타입 가드 처리 방식 비교

타입스크립트에서 함수를 정의할 때 화살표 함수익명 함수를 사용하는 경우가 많습니다. 하지만 두 가지 함수 유형을 사용할 때 타입 가드 처리 방식에 차이가 있을 수 있습니다.

화살표 함수와 익명 함수

먼저, 화살표 함수와 익명 함수에 대해 간단히 알아보겠습니다.

화살표 함수

const add = (a: number, b: number) => a + b;

화살표 함수는 const 키워드와 함께 변수에 할당되는 형태로 주로 사용됩니다.

익명 함수

const sub = function(a: number, b: number): number {
  return a - b;
}

익명 함수는 function 키워드로 정의되며, 변수에 할당될 수 있습니다.

타입 가드 처리 방식 비교

이제 두 가지 함수 유형을 사용할 때, 타입 가드 처리 방식에서 나타나는 차이를 살펴보겠습니다.

화살표 함수

const isString = (text: unknown): text is string => {
  return typeof text === 'string';
}

화살표 함수에서는 text is string 형태로 타입 가드를 정의합니다.

익명 함수

const isNumber = function(value: unknown): value is number {
  return typeof value === 'number';
}

익명 함수에서도 마찬가지로 value is number 형태로 타입 가드를 정의합니다.

결론

다양한 상황에 따라 화살표 함수와 익명 함수를 적절히 활용할 수 있지만, 타입 가드 처리 방식에서는 두 가지 함수 유형에 차이가 없습니다. 따라서 개발자는 코드의 가독성과 유지보수성을 고려하여 함수 유형을 선택할 수 있습니다.

이상으로 타입스크립트 화살표 함수와 익명 함수의 타입 가드 처리 방식에 대한 비교를 마치겠습니다. 부족한 부분이 있거나 추가하고 싶은 내용이 있다면 피드백을 주시면 감사하겠습니다.

References