holdanddeepdive / typescript-study

4 stars 0 forks source link

[1주차] 타입스크립트 딥다이브 모르는 내용 정리 #1

Open hyunahOh opened 2 years ago

hyunahOh commented 2 years ago

자바스크립트때처럼 아직 이해도가 부족해서 (1)용어 익히기, (2)모르겠는 내용 정리를 위주로 해보겠습니다.

파일 선언

declare 라는 키워드르 변수의 타입 선언을 해줌.

인터페이스

lib.d.ts

자바스크립트 런타임에 쓰는 기본 변수들의 타입 저장해둔 파일 확장 가능하다.

함수

콜러블

타입 표명(==단언 <-> 추론)

신선도

logIfHasName(person); // 오케이 logIfHasName(animal); // 오케이 logIfHasName({neme: 'I just misspelled name to neme'}); // 오류: 객체 리터럴은 정의된 속성만 지정해야 함. 여기서 neme은 불필요.

- 리터럴인데 추가 속성을 허용하고 싶으면 
```javascript
var x: { foo: number, [x: string]: unknown };
x = { foo: 1, baz: 2 };  // 오케이, `baz`는 인덱스 서명 부분에 해당하게 됨

타입 가드

리터럴

읽기 전용

제네릭

타입 인터페이스

타입 호환성

Never 타입

구별된 유니온

인덱스 서명

타입 이동하기

예외처리

믹스인