[TYPESCRIPT] this 타입과 함수 오버로드 — 호출 맥락을 타입으로 표현하는 고급 패턴
TypeScript에서 함수와 메서드를 설계하다 보면 “이 함수가 어떤 객체에서 호출되느냐”, “인자에 따라 반환 타입이 달라져야 하는 상황”을 자주 만나게 됩니다.이때 중요한 개념이 바로 this 타입과 함수 오버로드(Function Overload)입니다. 이 두 가지를 잘 활용하면 메서드 체이닝, 빌더 패턴, 다형적인 API를 타입 안정성 있게 설계할 수 있습니다. this 타입이란?TypeScript에서 this 타입은 “해당 메서드를 호출한 객체 자신의 타입”을 의미합니다.class Counter { value = 0; increment() { this.value++; return this; }}여기서 this의 타입은 Counter입니다. 즉, 반환 타입이 자동으로 Counte..