TypeScript?

최정환·2021년 12월 1일
0

TS

목록 보기
1/2

TS란 JS의 모든 기능을 포함하면서 정적 타입을 지원하는 언어 즉, TS라는 커다란 영역 안에 JS가 존재한다.

TS은 정적타입 JS은 동적타입이라는 개념이 있다.

filename은 JSX는 TSX로 JS는 TS로 파일 이름을 바꾼다.

이 둘의 차이는 무엇이고 왜 TS를 사용할까?

동적타입언어(JS)

  • 타입에 대한 고민 X
  • 코드의 양이 적을 때 생산성이 높다.
  • 타입 오류가 런타임시 발견된다.

🔧 어떤 타입의 변수든 들어올 수 있다.

function sum(a, b) {
  return a + b;
}

정적타입언어(TS)

  • 변수를 선언할 때마다 타입을 설정
  • 코드의 양이 많을 때 동적 타입 언어에 비해 생산성이 높다.
  • 타입 오류가 컴파일시 발견된다.

🔧 변수의 타입을 선언한다.
만약 a,b의 변수의 타입은 number가 아니면 경고를 해준다.

function sum(a: number, b: number) {
  return a + b;
}

또 다른 @types에 관한 얘기다.

JS로 만들어진 라이브러리에 불만을 표출하기 때문에 TS에게 모든 정보를 알려줘야한다. 오류가 난 부분에 필요한 command가 적혀 있을 경우 그것을 npm을 이용해 install해야한다.

@types 즉 Type definition은 해당 라이브러리의 소스코드를 보고 TS에게 해 줄 설명서를 만들어 준다.

이 설명서는 원하는 사람들이 공헌해 만들기 때문에 있을 수도 없을 수도 있다.

0개의 댓글