1. Readonly
→ 요소들을 읽기 전용으로 만들 수 있다
읽기 전용이 설정된 부분을 수정하려고 시도하면 TS에서 제한 한다 (보호 한다)
type Age = number;
type Player = {
readonly name: string,
age?: Age
}
function playerMaker(name: string) : Player {
return {
name: name
}
};
const a = playerMaker("hello");
a.age = 12;
a.name = "bye"; // readonly 설정된 name 부분을 수정하려고 하기 때문에 TS에서 오류 발생
const numbers : readonly number[] = [1, 2, 3, 4]
numbers.push(1) // numbers는 readonly 상태이기 때문에 사용자가 변경할 수 없다
2. Tuple
→ Array를 생성할 수 있게 하는데 최소한의 길이를 가져야 하고 특정 위치에 특정 타입이 있어야 한다
["hello", 12, true] // 첫 요소는 string, 두번째 요소는 number, 세번째 요소는 boolean
// 이것을 TS에서 선언할 때는 아래와 같이 사용한다
const player: [string, number, boolean] = ["hello", 12, true]
// 보호장치가 필요하고 TS에게 이 array가 최소 3개의 요소를 가지며 각 요소 타입이 순서대로여야 함을 알려야 할 때 사용
또한 이것을 사용하면 항상 정해진 갯수의 요소를 가져야 하는 Array를 지정할 수 있다
가끔 API를 받았는데 오브젝트가 아니라 배열 형태로 줄 때가 있다
→ 적어도 위와 같이 타입을 지정하는 것이 도움이 될 것이다
const player: readonly [string, number, boolean] = ["hello", 12, true]
// 이와 같이 readonly도 설정할 수 있다
'개발 > TypeScript' 카테고리의 다른 글
7. 타입스크립트(TypeScript) - Overloading & Polymorphism (다형성) (0) | 2022.09.04 |
---|---|
6. 타입스크립트(TypeScript) - 타입 & Call Signature (0) | 2022.09.04 |
4. 타입스크립트(TypeScript) - Alias(별칭) & return 타입 지정 (0) | 2022.09.03 |
3. 타입스크립트(TypeScript) - 타입(Type) (0) | 2022.09.03 |
2. 타입스크립트(TypeScript) - 타입 시스템(Type System) (0) | 2022.09.03 |