После парсинга xml в json я достаю массив объектов вида:
{
"Сума документів с SLA":555,
"Вхід у статус":"2021-11-22T12:06:54",
"Код персональних даних":555,
"Персональні дані":"Иванов Иван",
"Телефон":380631111111,
"Номер документа":555,
"Статус":"Очікує комплектації",
"Тип документа":"Рахунок-фактура",
"Категорія":"Плитка",
"Торговая марка":"MEGAGRES",
"Найменування SKU":"ELIS BLANCO P.",
"Код товару":555,
"Категорія посередника":"Архітектор",
"Найменування Посередника":"Петров Петро"
}
После чего нужно вытащить ид "Код персональних даних" и сделать его ключом в новом объекте, в него вложить объект с ключом "Номер документа". при повторении номера документа все значения делаю массивом, объединяю и пишу в этот новый объект.
Потом нужно просто перебрать все ключи "Код персональних даних", сравнить с другим таким же по структуре объектом и удалить совпадения. Для этого я со второго объекта беру ключи Object.keys(obj) и при переборе первого ищу вхождения.
Звучит все просто, но при 3000 элементов, ооочень медленно. Я вот сейчас начал думать что тормоза не в forIn, а в forEach...