Подскажите пожалуйста как на javascript реализовать дерево ссылок. Например есть такой массив
var array = [
{id: 1, parent: 0},
{id: 2, parent: 1},
{id: 3, parent: 2},
{id: 4, parent: 1},
{id: 5, parent: 3},
{id: 6, parent: 4}
]
Как построить меню типа:
{
id: 1,
parent: 0,
children: [
{
id: 2,
parent: 1,
children: [
{
id: 3,
parent: 2,
children: [.....]
}
]
}
]
}
var array = [
{id: 1, parent: 0},
{id: 2, parent: 1},
{id: 3, parent: 2},
{id: 4, parent: 1},
{id: 5, parent: 3},
{id: 6, parent: 4}
]
function makeTree(input) {
var root = null;
var byId = {};
var i;
for (i = 0; i < input.length; i++) {
if (input[i].parent == 0)
root = input[i];
byId[input[i].id] = input[i];
input[i].children = [];
}
for (i = 0; i < input.length; i++) {
if (byId[input[i].parent])
byId[input[i].parent].children.push(input[i]);
}
return root;
}
console.log(makeTree(array));
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Когда вывожу элементы подмассива в ячейки таблицы через цикл for, то первым выводится undefined, а потом уже все элементы: undefined Hello world Phrase 23 qwerty...
Ребят, я заканчиваю 4курс универа
Есть два запроса: /create /getlist В первом запросе я добавляю определенный элемент:
Есть строка, которая хранится в localstorage в формате json