타입스크립트란?
- Microsoft에서 개발한 오픈 소스 언어
- 자바스크립트의 상위 집합
- 자바스크립트의 한계를 해결
타입스크립트를 쓰는 이유
- 동적 타입을 정적으로 선언할 수 있다.
- 타입 유추를 통한 타입 제어가 가능하다.
- 컴파일 시점에 오류를 포착할 수 있다.
- JavaScript에서 찾을 수 없는 추가 코드 기능을 제공한다.
const sum (a : number, b: number) => {
return a+b;
}
sum(1, 2) // 3
타입스크립트의 기본 Type
- TypeScript는 JavaScript 코드에 변수나 함수 등 Type을 정의할 수 있다.
- Type을 나타내기 위해서 타입 표기 (Type Annotation)를 사용한다.
- TypeScript의 Type
기본 자료형 (primitive type)
참조 자료형 (reference type)
추가 제공 자료형
기본 자료형
- 기본 자료형(primitive type)
object와 reference 형태가 아닌 실제 값을 저장하는 자료형
primitive type 내장 함수를 사용 가능한 것은 자바 스크립트 처리 방식 덕분
- 종류
- string, boolean, sumber, null, undefined, symbol(ES6추가)
기본 자료형 (string, boolean, number)
//string
// 문자열을 저장하는 타입
let str: string = "hi";
// boolean
// 참/거짓을 저장하는 타입
let isSucceeded: boolean = true;
// number
// 부동 소수 값을 저장하는 차입
// 2진수, 8진수, 10진수, 16진수 사용가능
let decimal: number = 6;
let hex: number = 0xf00d;
let binary: number = 0b1010;
let octal : number = 0o744;
기본 자료형 (null, undefined)
//null
// 값이 의도적으로 비어있는 상태를 저장하는 타입
let n: null = null;
// undefined
// 아무 값이 할당되지 않은 상태를 저장하는 타입
let u: undefined = undefined;
//typeof로 데이터 타입을 확인
typeof null //'objedt'
typeof undefined //'undefined'
null === undefined //false
null == undefined //true
null === null //true
null == null //true
!null //true
isNaN(1+null) //false
isNaN(1+undefined) //true
참조 자료형
- 참조 자료형 (reference type)
객체, 배열, 함수 등과 같은 Object형식의 타입
메모리에 값을 주소로 저장하고, 출력시 메모리 주소와 일치하는 값을 출력
- 종류
Object, array, function
추가 제공 자료형
TypeScript에서 개발자의 편의를 위해 추가로 제공하는 타입
- 종류
tuple
enum
any
void
never