2012년 마이크로소프트가 발표한 타입스크립트(TypeScript)는 자바스크립트(JavaScript)를 기반으로 정적 타입 문법을 추가한 프로그래밍 언어이다.
타입스크립트는 코드에 목적을 명시하고 목적에 맞지 않는 타입의 변수나 함수들에서 에러를 발생시켜 버그를 사전에 제거하며 또한 코드 자동완성이나 실행 전 피드백을 제공하여 작업과 동시에 디버깅이 가능해 생산성을 높일 수 있다
타입스크립트는 자바스크립트와 100% 호환됩니다. 따라서 프론트엔드 또는 백엔드 어디든 자바스크립트를 사용할 수 있는 곳이라면 타입스크립트도 쓸 수 있습니다. 타입스크립트는 앱과 웹을 구현하는 자바스크립트와 동일한 용도로 사용 가능하며 서버 단에서 개발이 이루어지는 복잡한 대형 프로젝트에서도 빛을 발합니다.
타입스크립트는 ES6(ECMAScript 6)에서 새롭게 사용된 문법을 포함하고 있으며 클래스, 인터페이스, 상속, 모듈 등과 같은 객체 지향 프로그래밍 패턴을 제공합니다.
타입스크립트는 자바스크립트의 슈퍼셋, 즉 자바스크립트 기본 문법에 타입스크립트의 문법을 추가한 언어입니다. 따라서 유효한 자바스크립트로 작성한 코드는 확장자를 .js에서 .ts로 변경하고 타입스크립트로 컴파일해 변환할 수 있습니다.
let bb :string = 'baek'
변수 선언시 타입지정 가능.
사용 방법으론 변수명 : 타입명
타입으로 사용가능 한 것들은 string, number, boolean, bigint, null, undefined,[], {} 등이 있다.
let bb :string = 'baek';
bb = 123;
bb라는 변수에 string 타입을 지정 해놓았기 때문에 bb = 123엔 에러 발생
let 이름 :string[] = ['kim', 'park']
let 나이 :{ age : number } = { age : number }
array와 object에도 타입지정 가능.
let bb :string | number = 'baek';
변수에 여러가지 타입의 데이터가 들어올 수 있다면
|기호를 사용해 사용가능하다.
type nameType = string | number;
let bb :nameType = 'kim';
type 키워드를 이용해 변수처럼 담아서 사용도 가능.
const =(x :number) :number => {
return x * 2
}
함수는 파라미터와 return 값에 타입 지정가능.
return에 타입을 넣고 싶으면 파라미터 () 옆에 넣기