Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
13
Получить список названий объектов по типу "Устройства"
Условие задачи
Задача состоит из двух частей:
- Вывести строку, содержащую названия объектов.
- Реализовать функцию, которая формирует строку с именами объектов (через запятую), если их
object_typeотносится к типам, у которых полеclassравно строке "Устройства".
interface IObjectItem {
id: number;
name: string;
object_type: number;
}
interface IObjectType {
id: number;
class: string;
}
const objects: IObjectItem[] = [
{ id: 1, name: "Test 1", object_type: 1 },
{ id: 2, name: "Test 2", object_type: 1 },
{ id: 3, name: "Test 3", object_type: 2 },
{ id: 4, name: "Test 4", object_type: 3 },
{ id: 5, name: "Test 5", object_type: 4 },
];
const object_types: IObjectType[] = [
{ id: 1, class: "Устройства" },
{ id: 2, class: "Устройства" },
{ id: 3, class: "Порты" },
{ id: 4, class: "Кабели" },
];
function getNames(objects: IObjectItem[], object_types: IObjectType[]): string {
const mapIds: number[] = [];
object_types.forEach((type) => {
if (type.class === "Устройства") mapIds.push(type.id);
});
const result: string[] = [];
objects.forEach((obj) => {
if (mapIds.includes(obj.object_type)) result.push(obj.name);
});
return result.join(", ");
}
console.log(getNames(objects, object_types));