I need to compare two arrays here is one arrays [...showid] here is another arrays [...swipeeachotheruserId]
in this arrays ,some id will contains this ids will same but not all are same [ 3, 5 , 7 , 10 ,14 ] [ 2, 5, 7, 1, 20, 14 ]
some elements will be same but not all elements same
logic is
showid===swipeeachotheruserId ? will exclude not same id and display here : show id
how can compare and exclude this arrays values
CodePudding user response:
const showid = [ 3, 5, 7 , 10 ,14 ];
const swipeeachotheruserId = [ 2, 5, 7, 1, 20, 14 ];
const duplicates = showid.filter(value => swipeeachotheruserId.some(oneElement => oneElement === value));
const mergedArray = [
...showid,
...swipeeachotheruserId.filter(value => !duplicates.some(oneDuplicate => oneDuplicate === value))
];
const arrayWithoutDuplicate = mergedArray.filter(oneElem => !duplicates.some(value => oneElem === value));
console.log(duplicates);
console.log(mergedArray);
console.log(arrayWithoutDuplicate);
CodePudding user response:
if you want to pass the objects which are in both arrays, use this:
return showid.filter(e=>sipeeachotheruserid.includes(e))
if you want to pass the objects which are noth in swipeachotheruserid, then use this:
return showid.filter(e=>!swipeeachotheruserid.includes(e))