Use Fewer Type Parameters

YOUNGJOO-YOON·2021년 8월 24일
0

typeScript

목록 보기
35/65
post-custom-banner

Use Fewer Type Parameters

= type parameters는 최대한 적고 간결하고 이해하기 쉽게


function filter1<Type>(arr: Type[], func: (arg: Type) => boolean): Type[] {
  return arr.filter(func);
}
 
function filter2<Type, Func extends (arg: Type) => boolean>(
  arr: Type[],
  func: Func
): Type[] {
  return arr.filter(func);
}

위 두 코드는 같은 동작을 한다.

어떤 코드가 더 쉬워보이는가? 위의 코드가 더 쉽게 느껴진다.

아래의 코드는 extends를 사용해 특정 사용방법만을 강제해준다 위의 경우 함수를 타입으로 할 것을 강제한 것이다.
하지만 그냥 위의 코드처럼 함수또한 타입이기 때문에 아래처럼 해줄 이유는 없다.
코드의 복잡성을 늘릴 뿐이기 때문이다.

profile
이 블로그의 글은 제 생각을 정리한 글과 인터넷 어딘가에서 배운 것을 정리한 글입니다. 출처는 되도록 남기도록 하겠습니다. 수정 및 건의 오류 등이 있으면 언제든지 댓글 부탁드립니다.
post-custom-banner

0개의 댓글