async函数块之间如何同步执行？
请问多个async函数块之间如何同步的进行执行？
例子：以下两个async函数块如何顺序进行？
```
class Example {
    first;
    second;
    constructor(){
    }
    
    async  getFirstVal(){
     this.first = await [一个promise]
    }
    
    async  getSecondVal(){
    this.second = await[一个依赖于first的promise]
    }
    
    async  getOtherVal(){
    this.other = await[一个promise]
    }
    
    doSomeWork(){
    this.getFirstVal(); 
    this.getSecondVal();
    this.getOtherVal();
    ........
    }
}

```
请问，怎么做才能保证doSomeWork里面的first和second这两个异步块顺序执行？
我不想将second这一部分的逻辑写入getFirstVal方法中，虽然这样能获得正确的执行顺序，因为getFirstVal可能在很多地方都会异步调用到，我想将他封装成一个单独的函数。请问有什么好的方法帮助我实现这种async块之间的顺序执行吗？
```
async doSomeWork() {
    await  this.getFirstVal(); 
    this.getSecondVal();
    this.getOtherVal();
}
```
这样可以吗？优雅的方案也没太研究过，但是你可以 看看 Rxjs 或者 async 这些库，能得到比较好的思路