I have the following structure of code:
var cdict = new Map();
fetch("randomurl")
.then(res => res.json())
.then(data => {
    for (const obj of data.result) {
        // insert stuff into Map cdict
    }
    counter(0).then(res => {
        console.log(cdict);
    }) 
  
  // ^ here after calling of counter i need to do stuff
});
const cbegin = 0;
const ccount = 10;
function counter(cnt) {
    if (cnt < ccount) {
        setTimeout( () => {
            cnt++;
            
            fetch(someurl)
            .then(res => res.json())
            .then(data => {
                for (const obj of data.result) {
                    // do stuff
                }
                
            })
            .catch(err => {
                console.log(err);
            });
            counter(cnt);
        }, 1000);
    }
}
Here after execution of counter(0)  call and all its fetch requests, I wish to execute a line console.log(cdict);
How can this be achieved? And is this proper way to call fetch requests with delay of 1 second?
 
    