I have two array of objects containing key-value pairs of dateTime
string and count
. In arr
, I have two objects which have same dateTime
values with two of brr's
object's dateTime
values. I just want to filter out arr's
non-equal objects in an array.
What I mean to say is, if my arr
is this:
const arr = [
{ dateTime: '2021-08-14 02:00:00', count: 1 },
{ dateTime: '2021-08-15 04:00:00', count: 1 },
{ dateTime: '2021-08-16 10:00:00', count: 1 },
{ dateTime: '2021-08-16 19:00:00', count: 1 },
{ dateTime: '2021-08-17 05:00:00', count: 1 }
];
and brr
is this:
const brr = [
{ dateTime: '2021-08-16 19:00:00', count: 1 },
{ dateTime: '2021-08-17 05:00:00', count: 1 }
];
I am trying to get an array like this:
[
{ dateTime: '2021-08-14 02:00:00', count: 1 },
{ dateTime: '2021-08-15 04:00:00', count: 1 },
{ dateTime: '2021-08-16 10:00:00', count: 1 }
];
Failing to do so with this:
const arr = [
{ dateTime: '2021-08-14 02:00:00', count: 1 },
{ dateTime: '2021-08-15 04:00:00', count: 1 },
{ dateTime: '2021-08-16 10:00:00', count: 1 },
{ dateTime: '2021-08-16 19:00:00', count: 1 },
{ dateTime: '2021-08-17 05:00:00', count: 1 }
];
const brr = [
{ dateTime: '2021-08-16 19:00:00', count: 1 },
{ dateTime: '2021-08-17 05:00:00', count: 1 }
];
const newArr = [];
for( let item of brr ) {
const filtered = arr.filter( el => {
return el.dateTime !== item.dateTime;
});
newArr.push( filtered );
};
console.log( newArr );
I am getting some gibberish in the console. What am I doing wrong here?