타입스크립트: 자바스크립트 슈퍼셋
타입스크립트는 자바스크립트라는 언어를 사용해 새로운 기능과 장점을 추가한 것이다.
브라우저는 타입스크립트를 실행할 수 없다.
예를 들어 node.js는 타입스크립트를 실행할 수 없다.
자바스크립트를 실행할 수 있는 환경에서는 타입스크립트가 지원되지 않는다.
이게 뭔 개소리일까?
더 나은 버전인데 실행은 안된다?
그리고 타입스크립트가 결국 일반적인 자바스크립트라면, 어떻게 새로운 기능을 추가할 수 있다는 것인가?
타입스크립트는 언어면서 도구다.
즉, 코드를 시행하여 타입스크립트 코드를 자바스크립트로 컴파일하는 컴파일러인 것.
타입스크립트 컴파일러는 보다 나은 구문을 제공하고, 작업을 쉽게 수행할 수 있게 해준다.
그를 통해 복잡한 자바스크립트 문법을 멋지고 쉽게 컴파일할 수 있도록 한다.
타입스크립트는 타입을 추가하고 자바스크립트 언어에 기능을 추가한다.
이 기능은 스크립트가 실행되고 브라우저 런타임에서 에러가 발생하기 전에 코드의 에러를 미리 식별할 수 있는 기회를 제공한다.
아래 코드를 보자
function add(num1, num2) {
return num1 + num2;
}
console.log(add('2', '3')); // 23.. 원하는 작동 방식이 아니다.
add 함수는 Number 타입의 인자를 받는 것이 자연스럽다.
하지만 String 인자를 넣어도 위와 같이 작동한다. '2' + '3' = '23'
이런 로직 실수(?)는 웹 애플리케이션에서 큰 에러를 발생시킬 수 있다.
if 구문을 써서 이런 실수를 방지할 수는 있다.
하지만 개발자들은 그래도! 실수할 수 있다.
타입스크립트는 개발자들이 더 나은 코드를 쓸 수 있도록 해준다.
'프론트엔드 개발 > Typescript' 카테고리의 다른 글
타입스크립트의 규칙 (tsconfig.json) (0) | 2023.02.17 |
---|---|
타입스크립트 04. 브라우저에서 디버깅, outDir, rootDir (0) | 2023.02.17 |
타입스크립트 03. 컴파일 자동으로 (watch mode), tsconfig.json (0) | 2023.02.16 |
타입스크립트 02. 여러가지 타입(union, literal, unknown, ...) (0) | 2023.02.15 |
타입스크립트 01. 기본 타입(tuple, enum 포함) (0) | 2023.02.15 |