let arr = [
{
name: "/",
meat: {},
children: [
{
name: "home",
},
{
name: "home2",
},
{
name: "common-components",
children: [
{
name: "form-component",
}
]
},
{
name: "multilevel-menu",
children: [
{
name: "second-menu",
children: [
{
name: "third-menu",
}
]
}
]
}
]
}
];
function flattenChildrenReduce(arr) {
return arr.reduce((result, item) => {
result.push(item);
if (item.children) {
result = result.concat(flattenChildrenReduce(item.children));
}
return result;
}, []);
}
const flattenedData = flattenChildrenReduce(arr);
console.log(flattenedData);