강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

유키님의 프로필 이미지
유키

작성한 질문수

한 입 크기로 잘라먹는 타입스크립트(TypeScript)

keyof 연산자

keyof typeof 동시에 쓰는 경우

작성

·

6

0

keyof typeof를 쓰면 동시에 쓰면 객체형 변수에 대한 타입접근이 쉬운 것 같습니다. 그런데 실제로 현업에서 keyof typeof를 쓰는 경우가 있는데, 소스코드를 봐도 가끔 이해가 안되는 경우가 많은데 현업에서 keyof typeof를 동시에 쓰는 건 디테일하게 어떤 경우인지 알 수 있을까요? 지금은 간단한 예시라서 이해하기 쉬운데 용도를 알 수 없는 경우도 있어서 궁금함에 여쭤봅니다.

답변 1

0

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 유키님 이정환입니다.

keyof typeof는 강의에서 소개해드린 예시와 동일하게, 아래의 예시처럼 별도의 타입이 정의되어 있지 않은 특정 객체의 Key들을 유니온 타입으로 뽑아내는 용도로 활용됩니다.

const colors = {
  red: "#ff0000",
  blue: "#0000ff",
  green: "#00ff00",
};

type ColorName = keyof typeof colors;
// "red" | "blue" | "green"

function getColor(name: ColorName) {
  return colors[name];
}

getColor("red");    // ✅ OK
getColor("yellow"); // ❌ Error

현업에서도 이런 문법을 활용해 객체의 키값들을 뽑아내 별도의 타입으로 정의하는 편 인데요 이외의 사용예에 대해서는, 구체적으로 어떤 예시를 말씀하시는건지 코드를 전달해주셔야 답변드릴 수 있을 것 같습니다

유키님의 프로필 이미지
유키

작성한 질문수

질문하기