I have an object, which looks like this:
let obj = {
name: "name1",
nest: [
{
name: "name2",
nest: [
{
name: "name3"
},
{
name: "name4",
nest: [
{
name: "name5",
nest: [
{
name: "name6"
}
]
},
{
name: "name7"
},
{
name: "name8"
}
]
}
]
}
]
}
let parent = document.querySelector("ul");
function forOf (obj) {
for (let key in obj) {
if ( typeof obj[key] === "object" && obj.hasOwnProperty("nest") ) {
createList(obj[name], obj[key]);
} else if ( typeof obj[key] !== "object" ) {
let item = document.createElement("li");
item.textContent = obj[key];
parent.appendChild(item);
} else {
forOf(obj[key]);
}
}
}
function createList(obj, skills) {
let item = document.createElement("ul");
item.textContent = obj;
parent.appendChild(item);
parent = item;
forOf(skills);
}
forOf(obj);
I need to render tree of nested unordered lists. I parsed my object, but I can't render it in right way. I can't resolve problem with parent item for every nested list. Maybe, you have any ideas how to fix it?
I want to get result like this: example