Javascript 无法在setInterval函数内调用异步函数

Javascript 无法在setInterval函数内调用异步函数,javascript,typescript,setinterval,Javascript,Typescript,Setinterval,我想调用异步函数,该函数是从setInterval函数中的服务类实例调用的 class async { constructor(public service: Service){} async doSomeAsyncTask(){ setInterval(await this.service.anotherAsyncTaskInTheServiceClass(),3000);

我想调用异步函数,该函数是从
setInterval
函数中的服务类实例调用的

        class async {

        constructor(public service: Service){}            

            async doSomeAsyncTask(){

               setInterval(await this.service.anotherAsyncTaskInTheServiceClass(),3000); 

       //want to call the inside of setInterval function repeatedly in every 3ms.       
      } 
    }
  }

setInterval期望第一个参数是函数,所以我认为它应该是函数

setInterval(async () => { await this.service.anotherAsyncTaskInTheServiceClass() },3000); 

*感谢@Evariste*

的更正,请确保在try/catch中,将任何可能在异步函数中引发异常的操作包装起来,这些操作用作
setInterval
/
setTimer
的参数,以避免未处理的异常,请参阅。

这不是因为这个关键字吗?不需要指定它,我猜您是在执行函数,而不是分配它,为什么要使用wait?