Динамическое заполнение объекта в Typescript

Мне нужно в цикле динамически заполнить пустой объект, чтобы на выходе у меня получился объект с нужным мне интерфейсом.

Сам объект:

const person = {}

Вот его интерфейс:

interface IPerson {
  name: IName, // объект со своим интерфейсом, в который тоже могут быть вложены объекты
  age: IAge[], // массив объектов с интерфейсом IAge
}

Уже на данном этапе если указать const person: IPerson = {} возникнет ошибка.

У меня есть переменная keyName, которая в итерациях является строками 'name', 'age'.

Есть переменная subKeyName в которой храниться строка с ключом из интерфейсов IName, IAge.

И соответственно есть переменная value.

То есть в итерациях мне нужно сразу инициализировать свойство пустым объектом или массивом, а потом заполнять его:

для name:

person[keyname] = {};
person[keyname][subkeyname] = value;

для age:

person[keyname] = [];
prson[keyname].push(value);

Как это можно затипизировать?


Ответы (0 шт):