DcraftBg
DcraftBg

Reputation: 27

How to use async functions within functions?

So lets say you have this sync function you call a and another async function b that you want to put within a. And so you would have something like this:

async function b(){
      //some code here
}
function a(){
    

}

And now lets say we add some code into a and call b:

async function b(){
      //some code here
}
function a(){
      b()
      //other code here
}

Now lets say you want to run the code within a only if b has returned its promise. Well if you have direct access to b then its all fine, just make it a sync function. That would work but what if you didn't have access to b. Here comes the problem. If you specifically want to run it after b then you could use something like .then():

async function b(){
     //some code here
}
function a(){
     b().then(<results for example>=>{
     //other code
     })
}

But what if a was an async function, how would that work? Could i use await or anything of that sort?

Upvotes: 1

Views: 64

Answers (1)

Saied Islam Shuvo
Saied Islam Shuvo

Reputation: 237

You have to make a function async and await for b function, then b function will return data, otherwise it will return promise.

async function b(){
    //some code here
}
async function a(){
    const data = await b();
    // Do something with data
}

Upvotes: 3

Related Questions