[angular] 타입 스크립트 타입선언
참고 및 출저 사이트
타입스크립트 타입선언
- 변수명 : 자료형 = value 형식으로 자료형 변수를 선언한다.
자료형 선언 예제)
let a: string = 'text'; // 문자열
let b: number = 0; // 숫자형
let c: boolean = true; // 논리형
let d: any = true; // 어떤 타입이 올지 모를 때
let e: string | number = '0'; // 문자열이나 숫자가 올 때
// 자료형과 맞지 않는 값을 대입시에 에러 발생
let a: string = 0; // error
타입 종류
Type | 설명 |
---|---|
boolean | true와 false |
null | 값이 없다는 것을 명시한다. |
undefined | 값이 할당되지 않은 변수의 초기값 |
number | 숫자 |
string | 문자열 |
symbol | 고유하고 수정 불가능한 데이터타입이며 주로 객체의 프로퍼티로 식별자로 사용한다.(ES6에서 추가됨) |
object | 객체형(참조형) |
array | 배열 |
tuple | 고정된 요소수 만큼 타입을 미리 선언후 배열을 표현 |
enum | 열거형, 숫자값 집합에 이름을 지정한 것 |
any | 타입 추론 할수 없거나 타입 체크가 필요없는 변수에 사용한다. var 변수와 같이 어떤 타입의 값이라도 할당 가능하다. |
void | 일반적인 함수에서 반환값이 없는 경우 사용한다. |
never | 결코 발생하지 않는 값 |
배열선언 예제)
// 문자열만 가지는 배열
let arr01: string[] = ['a', 'b', 'c'];
let arr02: Array<string> = ['a', 'b', 'c'];
// 숫자형만 가지는 배열
let arr03: number[] = [1, 2, 3];
let arr04: Array<number> = [1, 2, 3];
// Union 타입(다중 타입)의 문자열과 숫자를 동시에 가지는 배열
let arr05: (string | number)[] = [1, 'a', 2, 'b', 'c', 3];
let arr06: Array<string | number> = [1, 'a', 2, 'b', 'c', 3];
// 배열이 가지는 값의 타입을 추측할 수 없을 때 any를 사용할 수 있다.
let arr07: (any)[] = [1, 'a', 2, 'b', 'c', 3];
let arr08: Array<any> = [1, 'a', 2, 'b', 'c', 3];
함수선언 예제)
function sum(a: number, b: number): number {
return a + b;
}
console.log(sum(2, 3)); // 5
객체 선언 예제)
let obj: object = {};
let arr: object = [];
let func: object = function() {};
let date: object = new Date();
let user: { name: string, age: number } = {
name: 'a',
age: 20
};
console.log(user); // {name: "a", age: 20}