· TypeScript는 JavaScript의 모든 기능을 포험하면서 추가 기능을 제공한다.
· JavaScript는 실행시간에 변수 타입을 결정하지만 TypeScript는 컴파일 시간에 변수 타입을 체크한다.
· TypeScript는 vsc 코드 입력시 타입에 대한 에러 메시지를 보여준다.
· 특정 프로그래밍 언어가 정적 언어로서의 정체성을 유지하게 하는 것
· 근본적 역할 : 타입 검사, 코드 변환
· 최적화 - 전반적 어플리케이션 실행 시간 단축
· TypeScript 컴파일러
· 소스 코드 정적 타입 검사 수행(오류 관리)
· TypeScript → JavaScript
정적 언어 - 기계어로 변환
동적 언어 - 코드를 한 줄씩 실행하며 동적으로 해석
· boolean (true, false)
· number : 정수, 실수, 2,8,16진수도 number로 표현
· string : 텍스트 데이터, 작은따옴표('), 큰따옴표("), 백틱(`)을 사용하여 표현
· 배열 : number[] = number type 배열
· 튜플 : 서로 다른 타입의 원소를 순서에 맞게 가질 수 있는 특수 형태 배열 (순서 중요), push하여 데이터 추가 가능하지만 비추
· enum : 열거형 데이터 타입, 명확하게 관련된 상수값 그룹화 시 사용하면 좋음, number&string만 할당 가능, 내부 요소는 값이 설정되지않으면 0부터 시작
· let : 변수
· const : 상수, =연산자로 재할당 불가능
· readonly : typeScript 등장 키워드, 객체(클래스, 인터페이스)속성을 불변으로 만듬
· any : 모든 타입의 슈퍼타입, 어떤 값이든 저장 가능, 코드의 안정성과 유지 보수성 저해, 가급적 사용x
· unknown : 모든 타입 값 자정 가능, 이 값을 다른 타입의 변수에 할당하기 위해서는 명시적 타입 확인 필요
*Type Assertion(타입 단언) : ex) 변수 as string; / 명시적인 방법임 굿굿
· union : 여러 타입 중 하나를 가질 수 있는 변수 선언시 사용, 여러 타입을 하나의 변수로 해결하려는 생각은 좋지 않음.
오 ~~ 정리까지