타입스크립트
- 자바스크립트에 정적인 타입 개념을 도입한 언어, 자바스크립트에서 동적으로 관리되던 타입을 엄격하게 관리
- 자바스크립트의 superset, 자바스크립트 기본 문법에 타입스크립트 문법을 추가한 언어
- class와 interface의 특징을 지원해 객체지향 프로그래밍 환경 제공
동작
App.ts ⇒ 트랜스파일러 ⇒ App.js
타입스크립트 파일은 브라우저에서 파싱하고 실행할 수 없기 때문에 자바스크립트 파일로 트랜스파일하는 과정을 거쳐야 한다.
한 번 사용해보자
js
class Person{ constructor(name, age){ this.name = name; this.age = age; } showPersonInfo(){ console.log(`my name is ${this.name}, I'm ${this.age} years old`); } addAge(year){ this.age += year; } } const person = new Person(10, 'Tom'); // name, age console.log(person); // {name: 10, age: 'Tom'} person.addAge('1'); //'Tom1'
ts
class Person{ name: string; age: number; constructor(name: string, age:number){ this.name = name; this.age = age; } showPersonInfo(){ console.log(`my name is ${this.name}, I'm ${this.age} years old`); } addAge(year: number){ this.age += year; } } const person = new Person(10, 'Tom'); console.log(person); person.addAge('1');

⇒ 잘못된 접근이 이뤄졌다는 것을 코드 작성단계에서 알 수 있다.