본문 바로가기

타입스크립트

[이펙티브 타입스크립트] 2장 타입 시스템(1) 이펙티브 타입스크립트 정주행 스터디 2주차 전반부 (분량이 많아 전반/후반으로 나누어 작성함) 06 에디터로 타입시스템 탐색하기 특정 시점에 타입스크립트가 값의 타입을 어떻게 이해하고 있는지 살펴보는 것은 타입 넓히기, 타입 좁히기의 개념을 잡기 위해 꼭 필요한 과정이다. 타입스크립트 언어 서비스는 에디터상에서 'Go To Definition'(F12) 기능을 제공한다. 예를 들어 fetch의 경우 node_modules/typescript/lib/lib.dom.d.ts 에 타입이 정의되어 있다. declare function fetch(input: RequestInfo, init?: RequestInit): Promise 이렇게 타입을 탐색하는 과정에서 우리는 타입스크립트를 통해 라이브러리가 어떻게 모.. 더보기
[이펙티브 타입스크립트] 1장 타입스크립트 알아보기 이펙티브 타입스크립트 정주행 스터디 1주차. 01 타입스크립트와 자바스크립트의 관계 이해하기 타입스크립트는 자바스크립트의 superset이다. 즉, 자바스크립트는 타입스크립트의 subset이다. 모든 자바스크립트는 타입스크립트 이지만, 모든 타입스크립트가 자바스크립트인 것은 아니다. 지금보다 자바스크립트가 지원하는 문법이 적었던 시절 타입스크립트에만 추가된 문법이 있다는 것을 알아두자. 타입스크립트는 자바스크립트 런타임 동작을 모델링하는 타입시스템을 가진다. 런타임 오류를 발생시키는 코드를 찾아내려 하지만 모든 오류를 찾아낼 수 있는 것은 아니다. 02 타입스크립트 설정 이해하기 tsconfig 설정에 따라 거의 다른 언어로 사용할 수 있다. undefined is not an Object 와 같은 런타.. 더보기
타입스크립트 기초 왜 타입스크립트를 쓰는가? 타입스크립트의는 JavaScript 프로그램을 위한 정적 Type Checker 역할을 목표로 한다. 개발자가 코드를 작성하며 만드는 오류 중, 가장 일반적인 것은 Type Error라고 할 수 있다. 단순 오타부터 시작해서, 라이브러리의 API 인터페이스를 제대로 이해하지 못했거나, 런타임에 어떻게 동작할지 잘못 예측하는 등의 경우 모두 포함된다. 타입스크립트를 사용하면 런타임 이전에 작성된 Type이 올바른지 확인하고, 코드 상에서 예기치 않은 동작을 발견한다면 이를 개발자에게 알려주어 버그를 줄일 수 있게된다. 기초 문법 Interface 사용하기 Interface를 선언함으로써 객체의 구조를 정의할 수 있다. interface User { name: string; id:.. 더보기