타입스크립트 함수 타입#4 : 함수의 this 타입 정의 : 매개변수의 첫번째 자리에서 : Typescript

horiz.d·2021년 12월 26일
0

함수의 this 타입 정의

다음과 같이 함수의 this타입을 정의하지 않으면 기본적으로 함수의 this는 any 타입을 사용하는데 any타입은 가급적 사용하지 않는 것이 좋으므로 this를 정의해준다.

this는 함수의 첫번째 매개변수 정의 자리에서 지정해준다.
물론 매개변수의 첫번째 정의자리에 들어갔지만, this는 매개변수가 아니라는 것을 타입스크립틀가 알고 있으므로, 두번째 자리부터 매개변수로 인식하여 문제가 발생하지 않는다.

rule

function funcName( this: type, input1: inputType, input2: inputType ): returnType {
...
}

code Ex

function getParam(this: string, index: number): string{
  const parans = this.splt(','); //타입에러!!! : this의 타입을 정의하여 잡아냈음
  //...
}

만일 위에서 this의 타입을 정의해주지 않았다면 this는 기본적으로 any타입으로 지정되기 때문에, splt라는 오타로 인해 반환된 어떠한 오류값을 능동적으로 필터링해내지 못했을 것이다.
,
하지만 this의 결과값이 string이어야 한다고 정의해줬기 때문에 해당 예제는 타입에러를 출력한다.


profile
가용한 시간은 한정적이고, 배울건 넘쳐난다.

0개의 댓글