J'ai deux tableaux d'objet:
les éléments de ma table ne sont pas des valeurs primitives, mais des objets complexes.
array1 = [obj1,obj2,obj3,obj4]
array2 = [obj5,obj5,obj6,obj7]
Je voudrais comparer deux tableaux et voir des éléments du tableau 2 sont déjà présents dans tableau1 puis créer un nouveau tableau de la différence.
Toute suggestion ?
var presents = _.intersectionWith(array1, array2, _.isEqual);
var dif = _.differenceWith(array1, array2, _.isEqual);
ES6 Cela suffira:
array2.filter(e => !array1.includes(e));
sans comprend
array2.filter(e=> array1.indexOf(e) < 0);
Plunker pour vous
_. difference vous donne seulement les éléments qui sont dans le 1er tableau mais pas dans le second, rien sur les éléments du tableau 2 qui ne sont pas dans le tableau 1.
Est-ce ce que vous voulez réaliser?