@YakovSpb

Как отфильтровать массив по свойству?

Есть массив arr:
[
  { id: "5jq", url: "https://cdn2.thecatapi.com/images/5jq.jpg", width: 320 },
  { id: "5qj", url: "https://cdn2.thecatapi.com/images/5qj.jpg", width: 480 }
]

Приходит похожий массив newArr. Как добавить в массив arr объекты из массива newArr, которых нет в arr по id?
  • Вопрос задан
  • 72 просмотра
Пригласить эксперта
Ответы на вопрос 1
0xD34F
@0xD34F Куратор тега JavaScript
arr.push(...newArr.filter(n => !arr.some(m => m.id === n.id)));

или

arr = Object.values([ ...arr, ...newArr ].reduce((acc, n) => (acc[n.id] ||= n, acc), {}));
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Sportrecs Москва
от 150 000 до 200 000 ₽
02 дек. 2020, в 10:23
2000 руб./за проект
02 дек. 2020, в 10:07
10000 руб./за проект