프로그래밍/Javascript
[TypeScript] 타입스크립트의 고유문법
빨강소
2023. 12. 5. 09:45
728x90
반응형
타입스크립트(TypeScript) 고유문법
1. 타입 주석과 타입 추론
타입 주석이란 변수 뒤에 콜론(:)과 타입 이름을 말합니다.
하지만 타입 주석을 생략도 가능합니다. 타입 부분이 생략되면 대입 연산자(=)의 오른쪽 값을 분석하여 변수의 타입을 결정하는데 이를 타입 추론이라고 합니다.
타입스크립트(TypeScript)의 타입 추론 기능은 자바스크립트 코드와 호환성을 보장하는데 큰 역활을 하며, 이 때문에 자바스크립트로 작성된 '. js' 파일을 확장자만 '. ts'의 확장자로 바꾸게 되면 타입스크립트 환경에서도 동작이 가능합니다.
//타입 주석
let num: number = 1;
//타입 추론
let n = 10;
2. 튜플(Tuple)
튜플(Tuple)은 파이썬과 같은 몇몇 프로그래밍 언어에서 사용됩니다. 배열과 튜플(Tuple)의 차이점은 저장되는 데이터 타입이 모두 같으면 배열, 다르면 튜플(Tuple) 입니다.
//배열
let numArr : number[] =[10, 9, 8];
let arr: Array<number> = [5, 6, 4];
//튜플(Tuple)
let tuple: [number, string] = [10, 'Hello'];
3. 제네릭 타입
다양한 타입을 한 번에 사용할 수 있게 해주는 타입을 제네릭 타입이라고 합니다.
class Container<A> {
constructor(public value: A) { }
}
let numContainer: Container<number> = new Container<number>(1);
let strContainer: Container<string> = new Container<string>('Hello World');
4. 대수 타입
대수 타입이란, 다른 자료형의 값을 가지고 있는 자료형을 의미합니다. 대수 타입에는 크게 합집합(union) 타입과 교집합(intersection) 타입 두 가지 타입이 있으며, 합집합 타입은 '|' 기호를 사용하며 교집합 타입은 '&' 기호를 사용하여 여러 타입을 결합할 수 있습니다.
ADT란, 추상 데이터 타입(abstract data type)을 의미하기도 하지만 대수 타입이라는 의미로도 사용됩니다.
//합집합 (union)
type NumOrStr = number | string;
//교집합 (intersection)
type numAndStr = number & String;
728x90
반응형