/ / JS: Сравнете обекти от масиви и изтрийте дубликати - javascript, масиви

JS: Сравняване на обекти от масиви и изтриване на дубликати - javascript, масиви

Имам два масива с обекти:

var oldUsers = [{"name": "Sam", "ext": 12}, {"name": "John", "ext": 15}];
var newUsers = [{"name": "John", "ext": 15}, {"name": "Jim", "ext": 19}];

Сега искам да премахна обекти от двете масиви, които са в двата масива. В този пример се опитвам да премахна {"name": "John", "ext": 15} от двете масиви. И двата масива съдържат 200 или повече обекта и накрая трябва да обработя обектите, които не са изтрити, така че в края моите масиви трябва да изглеждат така:

var oldUsers = [{"name": "Sam", "ext": 12}];
var newUsers = [{"name": "Jim", "ext": 19}];

Дали някой от вас има идея как да се реши този проблем, например чрез циклично преминаване през масиви? Трябва да сравнявам масиви с много обекти и след това искам да изтрия дублиращи се записи с splice() или нещо подобно от двата масива.

Благодаря предварително!

Отговори:

0 за отговор № 1

По-добре е да създадете набор от ключове (напр. Като "<name>:<ext>"в зависимост от това, което е уникално за всички елементи, намиращи се в един масив, и пресичане на другия масив, за да провери за присъствието им.