I am looking to turn an array that looks like this
['group1/ Child 1', 'group1/ Child 2']
into an object dynamically that looks like this
{
"attributes": {
"group0": "group1/ Child 1"
"group1": "group1/ Child 2"
}
}
the function should allow the array to be
['group1/ Child 1', 'group1/ Child 2', 'group1/ Child 3']
and return ... and etc
{
"attributes": {
"group0": "group1/ Child 1"
"group1": "group1/ Child 2"
"group2": "group1/ Child 3"
}
}
I think I should be using a reduce function to achieve this, but haven't been able to get it right yet.
Yes you can use reduce
const data = ['group1/ Child 1', 'group1/ Child 2', 'group1/ Child 3']
const grouped = data.reduce((acc,item,i) => {
acc.attributes[`group${i}`] = item;
return acc
},{attributes:{}})
console.log(grouped)
But why not just keep the array?