I have an array of objects with nested arrays. That looks like the following
[
{
type: 'type',
props: {
latitude: 100,
items: [
{type: 'item1' , elements: '10', utilities: '100},
{type: 'item2' , elements: '10', utilities: '100},
{type: 'item3' , elements: '10', utilities: '100},
{type: 'item4' , elements: '10', utilities: '100},
{type: 'item5' , elements: '10', utilities: '100},
]
}
},
{
type: 'type2',
props: {
latitude: 150,
items: [
{type: 'item1' , elements: '10', utilities: '100},
{type: 'item2' , elements: '10', utilities: '100},
{type: 'item4' , elements: '10', utilities: '100},
{type: 'item5' , elements: '10', utilities: '100},
]
}
},
...
]
Now I want this array to have [x].props.items <= 3 elements I dont care about the order, I basically want to lets say keep the first 3 elements
resulting in
[
{
type: 'type',
props: {
latitude: 100,
items: [
{type: 'item1' , elements: '10', utilities: '100},
{type: 'item2' , elements: '10', utilities: '100},
{type: 'item3' , elements: '10', utilities: '100}
]
}
},
{
type: 'type2',
props: {
latitude: 150,
items: [
{type: 'item1' , elements: '10', utilities: '100},
{type: 'item2' , elements: '10', utilities: '100},
{type: 'item4' , elements: '10', utilities: '100}
]
}
},
...
]
I have tried doing
let newArr = arr.map(i => i.map(j => j.props.items.slice(0,3)))
But I dont think im heading in the right direction