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

모든 자바스크립트 프로그램은 타입스크립트이다.

모든 타입스크립트 프로그램은 자바스크립트가 아닐 수 있다.

DFD62E4B-1F74-410E-9F2E-4BBE83BD55A0.jpeg

타입 스크립트에서는 타입을 선언하지 않아도, 초기값으로부터 타입을 추론한다.

let city = 'seoul';
city.toUppercase(); // toUppercase 속성이 'string' 형식에 없습니다. toUpperCase를 사용하시겠습니까?

string 타입을 선언하지 않았음에도, city의 초기값을 보고 string으로 추론한다.

타입 구문을 통해 코드의 예상하지 못한 오류를 방지할 수 있다.

type 혹은 interface로 객체의 타입을 정의할 수 있다.

interface State {
  name: string;
  capital: string;
}

자바스크립트에서는 허용되는 방식이지만, 타입스크립트에서는 허용되지 않는 방식이다.

이런 문법을 당연스럽게 쓰이고 있다면, 타입스크립트의 도입을 다시 검토해야 할 수 있다.

const a = [] + 3; // js : 3 ts : error
const b = null + 7; // js : 7 ts : error

아이템 2 : 타입스크립트 설정 이해하기