¿Cómo eliminar duplicados de una matriz de objetos usando ES6?
Me pregunto cuál sería el mejor método para fusionar 2 matrices de objetos itemsA
y itemsB
. Una vez combinados, los datos deben estar en mergedList
.
Criterios:
- Los elementos con
source='STAPLE'
no deben repetirse en la matriz fusionada. - Los artículos con cualquier otra fuente pueden repetirse. Por ejemplo, un elemento
name: 'Ball'
desource: 'USER'
puede existir dos veces.
itemsA
tiene 6 elementos, itemsB
tiene 7 elementos y mergedList
debería tener 11 elementos
let itemsA = [
{name: 'Milk', source: 'STAPLE'},
{name: 'Bread', source: 'AD'},
{name: 'Egg', source: 'STAPLE'},
{name: 'Ball', source: 'USER'},
{name: 'Pasta', source: 'STAPLE'},
{name: 'Coke', source: 'AD'}];
let itemsB = [
{name: 'Milk', source: 'USER'},
{name: 'Bread', source: 'AD'},
{name: 'Egg', source: 'STAPLE'},
{name: 'Ball', source: 'USER'},
{name: 'Mango', source: 'USER'},
{name: 'Pasta', source: 'STAPLE'},
{name: 'Coke', source: 'USER'}]
mergedList
debe ser igual a
let mergedList = [
{name: 'Milk', source: 'STAPLE'},
{name: 'Bread', source: 'AD'},
{name: 'Egg', source: 'STAPLE'},
{name: 'Ball', source: 'USER'},
{name: 'Pasta', source: 'STAPLE'},
{name: 'Coke', source: 'AD'}]
{name: 'Milk', source: 'USER'},
{name: 'Bread', source: 'AD'},
{name: 'Ball', source: 'USER'},
{name: 'Mango', source: 'USER'},
{name: 'Coke', source: 'USER'}] ];
Mostrar la mejor respuesta