У вас есть объект со вложенностью, нужно отобразить его с сохранением этой вложенности через списки ul li
Рекурсивная функция построения дерева \ вложенности
Функция createTree принимает два параметра - в какой селектор запихнуть результаты работы функции createTreeText и , собственно, сам обьект с данными, который мы собираемся обрабатывать.
createTreeText непосредственно строит дерево \ вложенность, проходится по пунктам, и если у пункта есть родитель, то оно засовывает в родителя дочерний пункт