Я делаю сортировку и группировку данных по первому слову, которое разделяется на _
(подчеркивание). Таким образом, результат должен возвращать 3 группы (например: orders, items and ""
). Как я могу установить какое-то значение (например, другие) для этой пустой строки. Здесь stackblitz
let rawData = [
{ name : 'orders_list', id : 10},
{ name : 'orders_price', id : 7},
{ name : 'items_list', id : 12 },
{ name : 'items_price', id : 7},
{ name : 'others-list', id : 7},
{ name : 'secondOthers-list', id : 7},
]
let data = rawData.reduce((r, e) => {
let group = e.name.substr(0, e.name.indexOf('_'));
if(!r[group]) {
r[group] = {group, children: [e]}
} else {
r[group].children.push(e);
}
return r;
}, {})
let result = Object.values(data)
console.log(result)