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/...

InformationsquelleAutor Leo | 2015-10-06

Schreibe einen Kommentar