0

I have my tree which a want to traverse through, each subtree might have different length:


const Tree = [
  {
    data: true,
    subTrees: [{
      data: true, subTrees: [{ data: true, subTrees: [] }]
    }]
  },
  {
    data: true,
    subTrees: [{
      data: true, subTrees: []
    }]
  },
  {
    data: true,
    subTrees: [{
      data: true, subTrees: [{ data: true, subTrees: [{ data: true, subTrees: [] }] }]
    }]
  },
  {
    data: true,
    subTrees: [{
      data: true, subTrees: [{ data: true, subTrees: [] }]
    }]
  }
]

How do I loop through each and every subTree so I can access the data in each node?

This is what I have now:


function traverseTree(currentTree) {

  for (let i = 0; i < currentTree.length; i++) {
    
    // do something

    traverseTree(currentTree[i])

  }

}

CarlssonK
  • 116
  • 3
  • 11

1 Answers1

0

you can use it:

const traverseTree = (arr) => {
    arr.forEach(el => {
        // do something
        traverseTree(el.subTrees);
    });
};

traverseTree(Tree);