Понимание использования «keyof typeof» в TypeScript: объяснение на примерах

Что касается методов, связанных с фразой, «typescript keyof typeof» относится к совместному использованию функций языка TypeScript keyofи typeof. Вот объяснение каждого из них:

  1. keyof: keyof— это оператор TypeScript, который позволяет получать ключи заданного типа. Он часто используется в сочетании с индексированными типами доступа для создания более универсального и многократно используемого кода. Например, keyof Tдаст вам объединение всех ключей типа T.

  2. typeof: typeof— это ключевое слово TypeScript, позволяющее получить тип заданного значения или переменной. В основном он используется для вывода типов и отражения типов. Например, typeof xдаст вам тип переменной x.

При совместном использовании keyof typeofможно использовать для получения ключей типа путем вывода типа из значения или переменной. Вот пример:

const obj = {
  name: "John",
  age: 30,
  location: "New York"
};
type Keys = keyof typeof obj;
// Keys type will be "name" | "age" | "location"

В этом примере typeof objопределяет тип переменной obj, которая представляет собой объект со свойствами name, ageи местоположение. Затем keyofиспользуется для получения ключей этого типа, в результате чего получается тип "name" | "возраст" | "местоположение".