해결된 질문
작성
·
140
·
수정됨
답변 1
0
안녕하세요! kql1님!
어떤 타입이 number 타입이라면, "사과"가 들어갈 수 없겠죠?!
마찬가지로 어떤 타입이 string 타입이라면, 3은 들어갈 수 없을거예요!
여기서 number | string 타입은 3도 가능하고, "사과"도 가능해요.
이런 타입을 우리는 Union 타입이라고 불러요(유니온 타입)
마지막으로 string 타입을 조금 더 살펴보면,
어떤 타입이 string 타입이라면, 모든 string이 다 들어갈 수 있어요
하지만, 어떤 타입이 "철수" | "영희" | "훈이" 타입이라면, string 중에서도 "철수" 또는 "영희" 또는 "훈이"만 입력 가능하고 "맹구"는 입력할 수 없겠죠?!
결과적으로 질문을 다시 돌아보면
fff가 key가 철수,영희,훈이고 value가 IProfile 인것은 이해하는데,
key가 "철수" | "영희" | "훈이" 라는 뜻은, key에 맹구는 못 들어간다는 뜻이에요!
type eee = "철수" | "영희" | "훈이";
type fff= Record<eee, IProfile>;
const myfff: fff {
"철수": {
name: "사과",
age: ...,
school: ...,
hobby: ...
},
"영희": {
name: ...,
...,
},
"맹구": { // 이거 안됨
}
}