Differenz und Schnittmenge zweier Arrays mit Objekten
ch habe zwei Arralist1
undlist2
die Objekte mit einigen Eigenschaften haben;userId
ist die ID oder eindeutige Eigenschaft:
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, us,erName: 'AAAA' }
]
Ich suche nach einer einfachen Möglichkeit, die folgenden drei Operationen auszuführen:
list1 operation list2
sollte die Schnittmenge von Elementen zurückgeben:
[
{ userId: 1235, userName: 'ABC' },
{ userId: 1236, userName: 'IJKL' }
]
list1 operation list2
sollte die Liste aller Elemente von @ zurückgeblist1
was nicht in @ vorkomlist2
:
[
{ userId: 1234, userName: 'XYZ' },
{ userId: 1237, userName: 'WXYZ' },
{ userId: 1238, userName: 'LMNO' }
]
list2 operation list1
sollte die Liste der Elemente von @ zurückgeblist2
was nicht in @ vorkomlist1
:
[
{ userId: 1252, userName: 'AAAA' }
]