TypeScript

엄격한 단일 상속 Mixin에 앞서서 class의 엄격한 단일 상속에 대하여 알아둬야 합니다. (클래스가 수행할 수 없는 상속의 형태를 알게 되면, 그에 맞는 함수를 구상하는 데 도움이 됩니다.) 클래스 Typescript 그리고 Javascript 클래스는 엄격하게 단일 상속만 지원합니다. 그래서 아래와 같이 할 수 없습니다. class User extends Tagged, Timestamped {// 🚨오류 : 다중 상속 불가 } interface와 class를 헷갈리지 말자. interface는 multiple extends가 가능합니다. 아래 코드에서 interface IUser는 Tagged와 Timestamped를 만족시켜야 합니다. class User는 IUser를 만족시켜야 합니다.(imp..
Element implicitly has an 'any' type because type 'typeof globalThis' has no index signature 이런 에러 문구가 떠서 글로벌 타입을 추가 지정하였습니다. 그 과정 속에서 알게 된 점을 정리해두고자 합니다.(간단?하게) 1. namespace namespace는 JS 일반 객체로 컴파일 됩니다. raw namespace와 raw module은 완전 동일한 사용법을 가지고 있습니다.(이름만 다름) 기본적으로 외부에서 네임스페이스와 모듈의 내부를 참조할 수 없습니다. 하지만, namespace 내부 데이터 앞에 `export`를 사용해서 외부에서도 접근이 가능하게 할 수 있습니다.(module도 완전 동일) 외부파일에서 `.ts`에서 선언..
react hook에 typescript를 적용하면서 generic 타입에 대해서 아직 제가 잘 모르고 있었다고 깨닫게 되었습니다. 그래서 새로 알게 된 내용을 기록해두고자 합니다. 1. generic의 extends가 곧 최종적인 타입은 아니다. extends는 단순 generic 타입의 범위를 제한시켜주는 역할을 합니다. 제한시킨다는 것은 extends 오른쪽의 조건을 만족하거나 포함해야한다는 것입니다. 완벽히 동일할 필요는 없습니다. 예를 들어 아래의 예시 코드에서는 제네릭 타입 T는 완전히 Ttest와 동일한 타입일 필요는 없되, Ttest의 타입을 만족, 즉, 포함해야 한다는 것입니다. type Ttest = { result: string; } ... 위를 바탕으로 제네릭T 자리에는 다음과 같은..
olimjo
'TypeScript' 태그의 글 목록