천진난만 코딩 스토리
2023.05.22) 타입스크립트의 타입 (2) 본문
1. readonly 속성
readonly 속성은 요소를 읽기 전용으로 만들어 준다.
const names: readonly string[]=["1", "2"]
names.push() //불가능
names.filter() //가능
names.map() //가능
readonly 속성을 적용하게 되면 값을 수정할 수 없게 된다.
다만, array를 변경하지 않는 즉, 불변성을 지켜주는 filter나 map은 사용할 수 있다.
다시 정리하면, readonly는 요소이 불변성을 지켜주는 보호장치인 셈이다!
2. Tuple
Tuple은 array를 생성하게 한다.
다만 최소한의 길이를 가져야 하고, 특정 위치에 특정 타입이 있어야 한다.
const user:[string, number, boolean] = ["ori", 5, true]
player[0] = 7 // 오류가 남. player[0]의 요소는 string 타입이기 때문.
타입이 주어진 위치대로 타입을 가지게 된다.
원한다면 Tuple에 readonly도 적용할 수 있다.
const user:[string, number, boolean] = ["ori", 5, true]
player[0] = "olaf" // 타입은 같지만, readonly기 때문에 오류가 남.
3. any
any는 typescript에서 빠져나오는 방법이다.
그렇게 되면 javascript에 있는 것이 되고, typescript로서의 보호장치를 잃어버리게 된다.
const a : any [] = [1,2,3]
const b : any = true
a + b //오류가 나지 않는다.
'TIL(Today I Learned)' 카테고리의 다른 글
2023.05.25) 타입스크립트의 함수 (1) (0) | 2023.05.25 |
---|---|
2023.05.25) 타입스크립트의 타입 (3) (0) | 2023.05.25 |
2023.05.18) 타입스크립트의 타입 (1) (0) | 2023.05.18 |
2023.05.14) styled-components와 emotion (0) | 2023.05.14 |
2023.05.13) 타입스크립트 시작하기 (0) | 2023.05.14 |