I have an array named listSelected
which feeds after each selection in another grid.
const listSelected =
[{
"_id": "10",
"age": 35,
"name": "Paige Zamora",
"gender": "female",
"company": "AUTOMON",
"**reference_id": "12**"
},
{
"_id": "11",
"age": 40,
"name": "Jennifer Carr",
"gender": "female",
"company": "SYNKGEN",
"**reference_id": "11**"
}];
I would like to check that for each value reference_id
one checks in another table named data
if this value exists, we get the value id
in a new array, even if the value reference_id
is present several times.
const data = [{
"_id": "**10**",
"age": 35,
"name": "Paige Zamora",
"gender": "female",
"company": "AUTOMON",
"**reference_id": "12**"
},
{
"_id": "**11**",
"age": 40,
"name": "Jennifer Carr",
"gender": "female",
"company": "SYNKGEN",
"**reference_id": "11**"
},
{
"_id": "**12**",
"age": 38,
"name": "Weaver Rosales",
"gender": "male",
"company": "ETERNIS",
"**reference_id": "12**"
},
{
"_id": "13",
"age": 31,
"name": "Myers Pickett",
"gender": "male",
"company": "ETERNIS",
"reference_id": "13"
},
{
"_id": "14",
"age": 36,
"name": "Dona Nicholson",
"gender": "female",
"company": "ETERNIS",
"reference_id": "14"
},
{
"_id": "15",
"age": 21,
"name": "Niki Blur",
"gender": "female",
"company": "AUTOMON",
"reference_id": "15"
},
{
"_id": "16",
"age": 37,
"name": "Bod Dennart",
"gender": "male",
"company": "SYNKGEN",
"reference_id": "16"
},
{
"_id": "17",
"age": 26,
"name": "Richard Nelson",
"gender": "male",
"company": "ETERNIS",
"reference_id": "17"
},
{
"_id": "**12**",
"age": 45,
"name": "Pedro Kluivert",
"gender": "female",
"company": "SYNKGEN",
"**reference_id": "18**"
}
];
In the end the new grid will give the following data:
const newGrid = [11,12]
I was thinking of using two nested forEach
functions, like these :
const newGrid = [];
listSelected.forEach((elt) => {
data.forEach((item) => {
if (item.reference_id === elt.reference_id) {
newGrid.push(item.id);
newGrid = Array.from(new Set(newGrid));
}
});
});
Is there not a simpler way to simplify this function to avoid using nested forEach
?