Сравнение двух массивов объектов и исключение элементов, которые соответствуют значениям, в новый массив в JS
Вот мой вариант использования в JavaScript:
У меня есть два массива объектов, свойства которых совпадают (идентификатор и имя).
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'];
Моя цель - получить еще один массив объектов, содержащий только те элементы, которые не совпадают. Как это:
var result = [
{id:1, name:'Sandra'},
{id:3, name:'Peter'}
];
Я знаю, что есть способ сделать это, перейдя из result1, сравнить каждый объект с объектами result2, затем сравнить их ключи, и, если они не совпадают, поместить значения в другой объект, затем вставить его в новый массив, но я Интересно, есть ли какой-нибудь более изящный способ, например, использование lo-dash, подчеркивания или чего-то подобного.
Спасибо!