✔ 목표
const beer = ['TERRA','CASS'] as const;
const COLOR_CODE: TBeer = {
TERRA: 'green',
CASS: 'blue'
}
COLOR_CODE 의 타입을 beer 의 값('TERRA', 'CASS') 으로 제한하기
✔ typeof
type TItem = typeof beer // type TItem = readonly ["TERRA", "CASS"]
type TItem = typeof beer[number] // type TItem = "TERRA" | "CASS"
✔ Mapped Type
const beer = ['TERRA','CASS'] as const;
type TBeer = { [key in typeof beer[number]]: string }
/** type TBeer = {
TERRA: string;
CASS: string;
} */
const COLOR_CODE: TBeer = {
TERRA: 'green',
CASS: 'blue'
}
✔ 참고
https://itchallenger.tistory.com/170
https://stackoverflow.com/questions/55377365/what-does-keyof-typeof-mean-in-typescript
'TIL' 카테고리의 다른 글
ChatGPT 사용 후기 (0) | 2023.02.18 |
---|---|
[Java] 문자열 포함 여부 확인 contains() / 문자열 비교 equals() 메서드/ == 연산자 차이 (0) | 2023.01.25 |
매개변수(Parameter) vs 인자(Argument) (0) | 2022.06.15 |
Session / JWT 차이점, 장단점 (0) | 2022.05.27 |
[Database] MySQL vs MongoDB 차이점 (0) | 2022.04.18 |