프론트엔드 개발/Typescript

타입스크립트

하이고니 2023. 2. 14. 21:54

타입스크립트: 자바스크립트 슈퍼셋

 

 

타입스크립트는 자바스크립트라는 언어를 사용해 새로운 기능과 장점을 추가한 것이다.

 

브라우저는 타입스크립트를 실행할 수 없다.

예를 들어 node.js는 타입스크립트를 실행할 수 없다.

자바스크립트를 실행할 수 있는 환경에서는 타입스크립트가 지원되지 않는다.

 

이게 뭔 개소리일까?

 

더 나은 버전인데 실행은 안된다?

그리고 타입스크립트가 결국 일반적인 자바스크립트라면, 어떻게 새로운 기능을 추가할 수 있다는 것인가?

 

타입스크립트는 언어면서 도구다.

즉, 코드를 시행하여 타입스크립트 코드를 자바스크립트로 컴파일하는 컴파일러인 것.

 

타입스크립트 컴파일러는 보다 나은 구문을 제공하고, 작업을 쉽게 수행할 수 있게 해준다.

그를 통해 복잡한 자바스크립트 문법을 멋지고 쉽게 컴파일할 수 있도록 한다.

 

타입스크립트는 타입을 추가하고 자바스크립트 언어에 기능을 추가한다.

이 기능은 스크립트가 실행되고 브라우저 런타임에서 에러가 발생하기 전에 코드의 에러를 미리 식별할 수 있는 기회를 제공한다.

 

 

아래 코드를 보자

 

function add(num1, num2) {
	return num1 + num2;
}

console.log(add('2', '3'));		// 23.. 원하는 작동 방식이 아니다.

 

add 함수는 Number 타입의 인자를 받는 것이 자연스럽다.

하지만 String 인자를 넣어도 위와 같이 작동한다. '2' + '3' = '23'

 

이런 로직 실수(?)는 웹 애플리케이션에서 큰 에러를 발생시킬 수 있다.

 

if 구문을 써서 이런 실수를 방지할 수는 있다.

하지만 개발자들은 그래도! 실수할 수 있다.

 

타입스크립트는 개발자들이 더 나은 코드를 쓸 수 있도록 해준다.