JavaScript async await 使用

你习惯在js代码中使用async await吗?
我经常在js代码中写一些异步方法,使用await调用的地方,如果方便修改成异步方法,就修改成异步方法,如下所示:

async setPosition(graphic, lng, lat) {
  this.lng = lng;
  this.lat = lat;
  if (graphic) {
    let height = await getHeightByLngLat(map, lng, lat);
    graphic.position = [lng, lat, height];
  }
}

但是,有些地方不方便把方法修改成异步的,比如,没办法把构造函数写成异步的,那怎么办呢?
可以使用如下方法:

(async () => {
  let result = await getScene(this.sceneId);
})();

这个方法也有缺点,就是它不会等待返回结果,如果需要等待这个返回结果,就不能使用这种方法。

posted @ 2024-06-21 11:27  0611163  阅读(58)  评论(0编辑  收藏  举报