@rasimzes

Как сравнить два массива и вывести новый?

let categories = [
		{"id": 1, "title": "Комплектующие"},
		{"id": 2, "title": "Ноутбуки"},
		{"id": 3, "title": "Сумки под ноутбуки"},
		{"id": 4, "title": "Сумки мужские"},
		{"id": 5, "title": "Сумки мужские синие"},
		{"id": 6, "title": "Жесткие диски"},
		{"id": 7, "title": "Кабеля"},
		{"id": 8, "title": "Кабеля HDMI"},
		{"id": 9, "title": "Мониторы"},
		{"id": 10, "title": "Кабеля HDMI mini"},
		{"id": 11, "title": "Сумки женские"},
		{"id": 12, "title": "Сумки мужские синие с рюшечками"}
	];
        
let targets = [
		{"idList": [7, 8, 9], "title": "Кабеля"},
		{"idList": [3, 4, 5, 11, 12], "title": "Cумки"},
	];


Как получить новые массивы из categories с соответствующими id указанными внутри idList элементов массива targets?
  • Вопрос задан
  • 466 просмотров
Решения вопроса 1
NAHB
@NAHB
Стремлюсь стать выше
Что-то вроде этого?

let result = [];
targets.forEach(function(target) {
	result.push(target.idList.map( id => categories.find( category => category.id === id) ));
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы