Vergleicht zwei arrays von Objekten, und schließen Sie die Elemente, die match-Werte in neues array in JS
hier ist mein use-case in JavaScript:
Ich habe zwei arrays von Objekten, die Eigenschaften haben, die übereinstimmen, (id & Namen).
var result1 = [
{id:1, name:'Sandra', type:'user', username:'sandra'},
{id:2, name:'John', type:'admin', username:'johnny2'},
{id:3, name:'Peter', type:'user', username:'pete'},
{id:4, name:'Bobby', type:'user', username:'be_bob'}
];
var result2 = [
{id:2, name:'John', email:'[email protected]'},
{id:4, name:'Bobby', email:'[email protected]'}
];
var props = ['id', 'name'];
Mein Ziel ist es, ein array von Objekten enthält nur die Elemente, die nicht übereinstimmen. Wie diese:
var result = [
{id:1, name:'Sandra'},
{id:3, name:'Peter'}
];
Ich weiß, dass es einen Weg gibt, dies zu tun, indem du von ergebnis1 vergleichen Sie jedes Objekt mit den Objekten der result2, dann vergleichen Sie Ihre Schlüssel, und wenn hast ' N match, setzen Sie die Werte in ein anderes Objekt ein und schieben ihn dann in neues array, aber ich Frage mich, gibt es eine elegantere Art und Weise, wie Sie mit lo-Bindestrich oder mit Unterstrich oder ähnliches.
Danke!
Teilen Sie Ihre Forschung, die allen hilft. Sagen Sie uns, was Sie versucht haben, und warum es nicht Ihren Bedürfnissen entsprechen. Dies zeigt, dass Sie schon die Zeit genommen, zu versuchen, sich selbst zu helfen, es spart uns von der Wiederholung offensichtlichen Antworten, und vor allem es hilft Ihnen, mehr spezifische und relevante Antworten! Siehe auch stellen
Entdecken Sie es selbst: 1, 2.
versuchen Sie dies: stackoverflow.com/questions/368280/...
Entdecken Sie es selbst: 1, 2.
versuchen Sie dies: stackoverflow.com/questions/368280/...
InformationsquelleAutor Leo | 2015-10-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
gut, das mit lodash-oder vanilla-javascript-es hängt von der situation ab.
aber nur wieder das array enthält die Duplikate kann es erreicht werden, durch die folgenden, nur es wurde von @1983
InformationsquelleAutor
Ich suchte eine Menge für eine Lösung, in der ich Vergleiche zwei array von Objekten mit unterschiedlichen Attribut-Namen (so etwas wie ein left outer join). Ich kam mit dieser Lösung. Hier habe ich Lodash. Ich hoffe, dies wird Ihnen helfen.
InformationsquelleAutor
Check-out Differenz und xor in lodash.
InformationsquelleAutor
Hier ist eine andere Lösung mit Lodash:
InformationsquelleAutor