이팩티브 타입스크립트 노트

by brunchdev

1. 타입스크립트와 자바스크립트의 관계 이해하기

타입스크립트는 자바스크립트 런타임 동작을 모델링하는 타입 시스템을 가지고 있다.



2. 타입 스크립트 설정 이해

noImplicitAny

- any 타입을 불허


strictNullChecks

- 모든 타입에 null, undefinded 불허



3. 코드 생성과 타입이 관계없음을 이해하기

타입스크립트 컴파일러의 2가지 역할

트랜스파일 (translate + compile) 변환되면서 interface, type을 모두 제거하기에 런타임에선 타입 체크를 할 수 없다.

타입 오류 체크 둘은 독립적이기에 컴파일 에러가 아닌 타입 체크 에러이다. 타입 오류가 있어도 컴파일이 된다.


noEmitOnError - 타입 오류가 있으면 컴파일 불허


타입과 런타임의 동작은 연관이 없다.

런타임에서의 타입이 선언 타임과 다를 수 있다.


따라서 C++과는 다르게 함수 오버라이딩이 안된다.


타입이 런타임 성능에 영향을 주지 않는다.



아니 글을 쓰는데...

logo-icon.svg

https://pf.kakao.com/_MjcFxj?t_src=wallet&t_ch=brunch&t_obj=booking_channel





keyword