Andrey (azangru) wrote,
Andrey
azangru

Маленький эксперимент: как превратить массив неких значений в цепочку последовательно выполняемых асинхронных функций в js-е. С новым (еще не вошедшим в стандарт) async-await-ом — очень удобно:

const foo = async function (arr) {
  for (let i = 0; i < arr.length; i++) {
    let x = await bar(arr[i]);
    console.log(x);
  }
}

const bar = function (x) {
  console.log('x is', x);
  return new Promise((resolve) => {
    setTimeout(() => resolve(x), 1000);
  })
};

foo([1, 2, 3])


(пример выполнения в бабелевском репле)

(Это мне понадобилось, эксперимента ради, превратить массив урлов в цепочку последовательно выполняемых запросов)
Subscribe

  • (no subject)

    Results of a survey. No idea who those guys are or how reliable their data, but I've been wondering for a while now what people mean when they say…

  • (no subject)

    I'm listening to The Ickabog, by J.K. Rowling and read, with much gusto, by Stephen Fry. What started like a nice children's tale not dissimilar from…

  • (no subject)

    From today's questions to the Prime Minister: Mr Speaker, today, millions of Uyghur people in China live in fear under a cruel regime. The BBC,…

  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments