728x90
1. 다차원 배열의 타입 정의
let doubleArr: number[][] = [
[1, 2, 3],
[1, 2],
];
2. 튜플
- 배열의 길이와 타입을 바꿀 수 없다.
- 결국 배열이다.
let tup: [number, number] = [1, 2];
// 튜플 사용예시
const users: [string, number][] = [
["이정환", 1],
["이아무개", 2],
["김아무개", 3],
["박아무개", 4],
[5, "조아무개"], // 오류 발생
];
3. 옵셔널 프로퍼티(?)와 readonly 프로퍼티
let user: {
id?: number;
readonly name: string; // name은 값 수정 불가
} = {
id: 1,
name: "이정환",
};
user.name = "dskfd"; // 오류 발생
4. 인덱스 시그니처
- 빈배열도 오류가 나지 않기 때문에, 정확한 키를 하나 넣어줌으로써, 빈 배열을 방지할 수 있다.
type CountryNumberCodes = {
[key: string]: number;
};
type CountryNumberCodesWith = {
[key: string]: number;
Korea: number;
};
type CountryNumberCodesError = {
[key: string]: number;
Korea: string; // 오류! 인덱스 시그니처와 동일한 타입
};
let countryNumberCodes: CountryNumberCodes = {}; // 오류 없음
let countryNumberCodesWith: CountryNumberCodesWith = { Korea: 10 }; // 빈 배열일 경우를 방지하는 방법
728x90
반응형
'TypeScript' 카테고리의 다른 글
서로소 유니온 타입 | 한 입 크기로 잘라먹는 타입스크립트 (0) | 2024.03.03 |
---|---|
타입단언 (value as typeName) | 한 입 크기로 잘라먹는 타입스크립트 (0) | 2024.03.03 |
타입스크립트의 컴파일 과정 | 간단 예시 (0) | 2024.02.27 |
타입스크립트 컴파일러 옵션 설명 (1) | 2024.02.27 |