异步功能完成后执行代码

时间:2018-12-13 17:08:24

标签: javascript asynchronous

我有以下代码(功能的一部分):

async addMarkers() {
    const timeout = ms => new Promise(resolve => setTimeout(resolve, ms));

    function geoRequest(order) {
    }

    function setMarker(order) {
    }

    for (let i = 0; i < orders.length; i++) {
      if(orders[i].google_coords === '') {
        await timeout(1000);
        geoRequest(orders[i]);
      } else {
        setMarker(orders[i]);
      }
    }
  }

仅在for循环完成后才需要执行一些代码。我该怎么办?将addMarkers包装到Promise或其他内容中?我尝试执行回调作为addMarkers的参数,但没有帮助。

1 个答案:

答案 0 :(得分:0)

async函数返回承诺。

addMarkers().then(() => doSomething());