Задать вопрос
yarkov
@yarkov
Помог ответ? Отметь решением.

Как получить разницу между массивами?

Ребят, я кажется заработался.
const array1 = [{id:1},{id:2}];
const array2 = [{id:2}];

Как получить список id, которых нет в array2?
  • Вопрос задан
  • 544 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 3
@wostex
var i = array1.filter(al => {return !array2.map(bl => bl.id).includes(al.id)});


i вернет массив объектов с id, которых нет в array2

массив именно значений:

array1.filter(al => {return !array2.map(bl => bl.id).includes(al.id)}).map(l => l.id)
Ответ написан
К примеру так:
let result = array1.filter((item) => {
	return !array2.find((test) => {return test.id === item.id});
});
console.log(result);
Ответ написан
@kodwi
https://moikrug.ru/kodwi
lodash.com

https://lodash.com/docs/4.17.4#differenceBy

_.differenceBy([ { id: 1 }, { id: 2 } ], [ { id: 2 } ], 'id'); // result is [ { id: 1 } ]
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
devellopah
@devellopah
ramdajs.com
const list1 = [{id:1}, {id:2}];
const list2 = [{id: 2}];
R.difference(list1, list2); // [{"id": 1}]
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы