У меня есть два массива list1
и list2
которых есть объекты с некоторыми свойствами; userId
- это идентификатор или уникальное свойство:
list1 = [
{ userId: 1234, userName: 'XYZ' },
{ userId: 1235, userName: 'ABC' },
{ userId: 1236, userName: 'IJKL' },
{ userId: 1237, userName: 'WXYZ' },
{ userId: 1238, userName: 'LMNO' }
]
list2 = [
{ userId: 1235, userName: 'ABC' },
{ userId: 1236, userName: 'IJKL' },
{ userId: 1252, userName: 'AAAA' }
]
Я ищу простой способ выполнить следующие три операции:
-
list1 operation list2
должен возвращать пересечение элементов:[ { userId: 1235, userName: 'ABC' }, { userId: 1236, userName: 'IJKL' } ]
-
list1 operation list2
должен возвращать список всех элементов изlist1
которые не встречаются вlist2
:[ { userId: 1234, userName: 'XYZ' }, { userId: 1237, userName: 'WXYZ' }, { userId: 1238, userName: 'LMNO' } ]
-
list2 operation list1
должен возвращать список элементов изlist2
которые не встречаются вlist1
:[ { userId: 1252, userName: 'AAAA' } ]