Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

176
Views
How to get result of recursive callback function

I'm using an API (mapbox) which has an async method using a callback function to get features from clusters on the map. Since each cluster may contain other clusters I need to call this recursively to get all the features. I've written this recursive method:

getClusterChildrenRecursive(clusterId: any, features: any[] = []) {
  //API call, I can't modify method getClusterChildren
  this.map.getSource('events').getClusterChildren(clusterId, (err, children) => {
    for (let i = 0; i < children.length; i++) {
      if (children[i].properties.cluster) {
        //Child is another cluster, recurse
        this.getClusterChildrenRecursive(children[i].properties.cluster_id, features);
      }
      else {
        //Found feature, add to collection
        features.push(children[i]);
      }
    }
  });
}

But I can't figure out how to call this and return a collection of all features. I've thought of returning a promise but can't get it to work.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!