TypeScript Record

geun·2024년 6월 2일

TypeScript

목록 보기
4/4
post-thumbnail
export const typesNumber = {
  "1": "normal",
  "2": "fighting",
  "3": "flying",
  "4": "poison",
  "5": "ground",
  "6": "rock",
  "7": "bug",
  "8": "ghost",
  "9": "steel",
  "10": "fire",
  "11": "water",
  "12": "grass",
  "13": "electric",
  "14": "psychic",
  "15": "ice",
  "16": "dragon",
  "17": "dark",
  "18": "fairy",
};


const type = typesNumber[typeId.toString()];

다음과 같이 오브젝트를 통해 타입 번호를 어떤 타입인지를 반환하게 만들었을 때, 타입스크립트에서는 파라미터와, 리턴값의 타입이 명확하지 않으므로 에러를 발생하게 하는데, 이때 파라미터와 리턴값의 타입을 정의해줘야 한다.

Record란?

Record<Key, Value>
키가 Key타입이고 값이 Value 타입인 객체 타입을 생성한다.

따라서

export const typesNumber: Record<string, string> = {
  "1": "normal",
  "2": "fighting",
  "3": "flying",
  "4": "poison",
  "5": "ground",
  "6": "rock",
  "7": "bug",
  "8": "ghost",
  "9": "steel",
  "10": "fire",
  "11": "water",
  "12": "grass",
  "13": "electric",
  "14": "psychic",
  "15": "ice",
  "16": "dragon",
  "17": "dark",
  "18": "fairy",
};

와 같이 Record를 이용하면, 파라미터와 리턴의 타입을 정의해 에러를 방지해 줄 수 있다.

0개의 댓글