Есть примерно такой набор данных и по ним нужно построить дерево категорий.
Main
DATA
Images
1.png
Videos
1.avi
Music
TEST
0:{name: "Images", .., parent: "Data"}
1:{name: "1.png", .., parent: "Images"}
2:{name: "Musics", .., parent: "Data"}
3:{name: "Data", .., parent: "MAIN"}
4:{name: "Videos", ..", parent: "Data"}
5:{name: "1.avi", ..", parent: "Videos"}
6:{name: "Test", ..", parent: "MAIN"}
Есть функция для построения этого дерева
function tree(parent, arr) {
arr.forEach(function (item) {
if (parent !== item.parent) {
return;
}
//build tree
tree(item.name, arr);
});
}
Всё работает и строится, но при относительно небольшом наборе данных (например при 50 элементов - 2550 проходов) количество проходов огромное, каким образом можно улучшить проход чтобы уменьшить количество итераций? Или есть какой-то другой подход в этом случаи?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть экшн(использую react+redux)например:
Как с помощью JS динамически добавлять новые контроллы (input, div и тд) ? Пробую так :
Нужно сделать функцию, которая принимает две функции (простые матоперации), объединяет их в одну и возвращает её