Sobes.tech
Назад к задачам
Junior — Senior
25

Сформировать объект со статистикой субъектов по регионам

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Задача состоит в реализации функции, принимающей массив объектов, каждый из которых содержит свойства name и region. Функция должна вернуть объект, где каждый ключ представляет номер региона, а соответствующее значение — количество субъектов, принадлежащих этому региону.

Дополнительные переменные и вспомогательные массивы использовать нельзя. Необходимо вернуть результат непосредственно из функции getResult.

interface ISubjectRegion {
  name: string;
  region: number;
}

interface IResult {
  [key: ISubjectRegion['region']]: number;
}

const sourceData: ISubjectRegion[] = [
  { name: "Субъект 1", region: 1 },
  { name: "Субъект 2", region: 2 },
  { name: "Субъект 3", region: 2 },
  { name: "Субъект 4", region: 2 },
  { name: "Субъект 5", region: 4 },
];

// ожидаемый результат:
// {
//   1: 1, // 1 субъект в регионе 1
//   2: 3, // 3 субъекта в регионе 2
// }

function getResult(data: ISubjectRegion[]): IResult {
  // реализовать здесь
}