타입스크립트 (Typescript)란?

정관우·2021년 6월 25일
0
post-thumbnail

타입스크립트 (Typescript)란?

타입스크립트는 자바스크립트의 확장 언어(superset). 변수에 선택적으로 타입을 지정해 줄 수 있고 이는 순수 자바스크립트 코드로 컴파일 된다. 즉, 타입스크립트는 정적 타입을 지원하는 자바스크립트!

왜 정적 타입이 필요할까?

  • 에러의 사전 방지

    : 타입스크립트에서 변수나 함수를 선언하려면 입력 값의 타입을 지정해주어야 한다. 만약, 올바르지 않은 인풋이 들어오면 컴파일 단계부터 에러를 발생시키기 때문에, 보다 빠르게 에러를 발견하고 해결할 수 있게 한다.

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

sumJS(10, 20) // 30
sumJS('10', '20') // 1020 (???)

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

sumTS('10', '20') // ERROR : '10'은 number에 할당될 수 없습니다.

  • 코드 가이드 및 자동 완성 기능

    : 서버나 외부 API를 통해 받아온 데이터들에 타입을 지정해 타입에 의한 오류를 방지하고, 협업을 하면서 변수명 뿐만 아니라 데이터 타입도 참고할 수 있어 코드를 더 이해하기 쉽다.

// toLocaleString : 특정 언어의 표현 방식에 맞게 숫자를 표기하는 API
function sumJS(a, b) {
  return a + b;
}
var total = sumJS(10, 20);

// 개발자는 sumJS의 결과가 number로 가정한 상태에서 코드를 실행 -> ERROR ? 
total.toLocaleString();


function sumTS(a: number, b: number): number {
  return a + b;
}
var total = sumTS(10, 20);

// sumTS의 결과가 number라는 것을 확실히 보장받은 상태에서 코드를 실행 -> ERROR X
total.toLocaleString();

참고자료
Why You Should Choose TypeScript Over JavaScript
타입스크립트 핸드북

profile
작지만 꾸준하게 성장하는 개발자🌳

0개의 댓글