I’m trying to create a new obj similar to my input, but containing only the elements from a selected id list.
JavaScript
x
28
28
1
const arrObj = [
2
{
3
value = 1,
4
name = 'a'
5
},
6
{
7
value = 2,
8
name = 'e'
9
},
10
{
11
value = 3,
12
name = 'i'
13
},
14
{
15
value = 4,
16
name = 'o'
17
},
18
{
19
value = 5,
20
name = 'u'
21
},
22
];
23
24
const selectedIds = [1,4,5];
25
26
// How can I make this selectedObjs as the same type as arrObj, but only containing the selected elements?
27
const selectedObjs = [];
28
Advertisement
Answer
Use Array.filter
JavaScript
1
25
25
1
const arrObj = [
2
{
3
value: 1,
4
name: "a",
5
},
6
{
7
value: 2,
8
name: "e",
9
},
10
{
11
value: 3,
12
name: "i",
13
},
14
{
15
value: 4,
16
name: "o",
17
},
18
{
19
value: 5,
20
name: "u",
21
},
22
];
23
const selectedIds = [1, 4, 5];
24
const selectedObjs = arrObj.filter(node => selectedIds.includes(node.value));
25
console.log(selectedObjs)