[타입시스템 17] readony 변경 방지
2022. 7. 20. 13:21ㆍ책/이펙티브 타입스크립트
1. readonly
- 배열의 요소를 읽을 수 있지만, 쓸 수는 없다
- length를 읽을 수는 있지만, 바꿀 수는 없다
- 원본 배열을 변경하는 메서드(pop, push, ... )를 호출할 수 없다
2. readonly 효과
- TS는 매개변수가 함수 내에서 변경이 일어나는지 체크한다
- 호출하는 쪽에선 함수가 매개변수를 변경하지 않는다는 보장을 받게 된다
- 따라서 함수가 매개변수를 변경하지 않는다면 readonly로 선언하는게 좋다
(의도치 않은 변경 방지, 더 넓은 타입 호출 가능) - 단, 어떤 함수가 readonly로 만들어졌다면 이를 호출하는 다른 함수도 모두 readonly여야 한다
'책 > 이펙티브 타입스크립트' 카테고리의 다른 글
[타입추론 19] 장황한 코드 방지 (0) | 2022.07.22 |
---|---|
[타입시스템 18] 매핑된 타입으로 값 동기화 (0) | 2022.07.21 |
[타입시스템 15] 인덱스 시그니처 (0) | 2022.07.19 |
[타입시스템 14] 반복 줄이기(타입연산, 제네릭) (0) | 2022.07.19 |
[타입시스템 13] Type vs Interface (0) | 2022.07.18 |