с одинаковыми id, как объединить все три массива в один так, чтобы остались только объекты с разными id (если в каком-то объекте полей больше, чем в другом с таким же id, просто дописать не хватающие поля) + нужно отсортировать по id (можно использовать, конечно sort((a,b) =>b-a), но на сколько правильно, может можно как-то за один проход сделать)? Спасибо!
const foo = (...arrays) => { const objects = new Map() arrays.flat().forEach(item => { objects.set(item.id, Object.assign({}, objects.get(item.id), item)) }) return [...objects.values()].sort((a, b) => a.id > b.id ? 1 : -1) }
Обсуждают сегодня