У меня есть массив, который выглядит примерно так:Javascript массив в объект
files = [
'Dashboard/Logs/Errors',
'Dashboard/Logs/Other',
'Accounts/Main',
]
Я хочу, чтобы сделать его выглядеть следующим образом:
navigation = [
{
"title": "Dashboard",
"dropdown": [
{
"title": "Logs",
"dropdown": [
{
"title": "Errors",
},
{
"title": "Other",
}
]
}
]
},
{
"title": "Accounts",
"dropdown": [
{
"title": "Main",
}
]
}
]
У меня есть следующий до сих пор:
var navigation = [];
for (var i = 0; i < files.length; i++) {
var parts = files[i].split('/');
navigation.push({title: parts[0]});
for (var j = 1; j < parts.length; j++) {
}
}
У меня возникли трудности с выяснением достойного способа сделать это. То, что у меня до сих пор уже не работает, потому что оно создает два объекта под навигацией каждый с title: "Dashboard"
. Любые идеи для умного подхода? Спасибо :)
Что навигации? 'navigation = [];'? – kulkarniankita
@Alec Исправлена ли глубина иерархии объектов? или есть максимальная глубина по крайней мере? – stark
@ kulkarniankita «навигация» определяется прямо там. Конечным результатом должна быть «навигация». –