[typescript] 타입스크립트 화살표 함수와 익명 함수의 사용 가능한 기능 비교

타입스크립트는 자바스크립트의 확장된 타입 시스템을 갖춘 언어로, 화살표 함수와 익명 함수의 사용에 있어 몇 가지 차이점이 있습니다. 이번 포스트에서는 두 가지 함수 유형을 사용할 때의 기능적인 차이를 살펴봅니다.

화살표 함수

화살표 함수는 ES6에서 도입된 새로운 함수 표현 방식으로, 함수 표현식의 간결한 대체 수단을 제공합니다.

// 화살표 함수
const arrowFunction = (param1: number, param2: number): number => {
  return param1 + param2;
};

화살표 함수는 this를 자동으로 바인딩하여 현재의 실행 문맥을 유지합니다. 그리고 function 키워드를 생략하여 간결하게 표현할 수 있는 장점이 있습니다.

익명 함수

익명 함수는 선언과 동시에 변수에 할당되는 함수를 의미하며, 일반적으로 콜백 함수나 즉시 실행 함수 등에서 사용됩니다.

// 익명 함수
const anonymousFunction = function(param1: number, param2: number): number {
  return param1 + param2;
};

익명 함수는 this의 값이 동적으로 결정되며, 해당 함수가 호출되는 컨텍스트에 따라 this가 가리키는 대상이 달라질 수 있습니다.

기능적인 차이

  1. this 바인딩: 화살표 함수는 함수가 정의된 시점에서의 this를 유지하고, 익명 함수는 실행 컨텍스트에 따라 this가 변하는 특징이 있습니다.
  2. 간결성: 화살표 함수는 function 키워드 생략과 단일 표현식인 경우의 return 값 바로 반환 등으로 코드를 더 간결하게 작성할 수 있습니다.

이처럼 화살표 함수와 익명 함수는 각각의 특징을 가지고 있으며, 실제 사용하는 상황에 맞게 적절히 활용하는 것이 중요합니다.

더 많은 정보를 원하시면 타입스크립트 공식 문서를 참고하세요.