타입 안에서 값의 타입과 관련된 정보를 추출하는데 사용되는 연산자
interface Person {
name: string;
age: number;
}
type UserKeys = keyof User; // 'name' | 'age'
const person = {
name: "John",
age: 30,
};
type PersonType = typeof person; // { name: string, age: number }
객체에서 키만 추출할 때에는 이렇게 사용할 수 있다
person이 타입객체가 아니기 때문에 에러나기때문에
type Key = keyof typeof person;
라고 해줘야 함
객체의 키를 가져와 해당 키에대한 유효한 값을 가져올 수 있음
interface Person {
name: string;
age: number;
address: string;
}
type PersonProps = {
[key in keyof Person]: {
value: Person[key];
updatedBy: string;
}
}
const person: PersonProps = {
name: { value: "John", updatedBy: "Admin" },
age: { value: 30, updatedBy: "User" },
address: { value: "123 Main St", updatedBy: "Admin" }
};
// name = Person의 키
type PersonProps = {
name: {
value: Person[name];
updateBy: string;
}
}
공부하며 정리&기록하는 ._. 씅로그