Полный цикл в digital

Создание цепочек промисов

Одним из примуществом промисов является то, что они позволяют создавать цепочки промисов. Так, ранее мы рассмотрели применение методов then() и catch() для получения и обработки результатов и ошибок асинхронной операции. При выполнении эти методы генерируют новый объект Promise, для которого мы также можем вызвать методы then() и catch(), таким образом построить цепочку промисов. Благодаря этому мы можем обрабатывать подряд несколько асинхронных операций - одна за другой.

Пусть у нас есть следующий промис:

let promise = new Promise(function (resolve, reject) {
  setTimeout(function () {
    resolve("string");
  }, 3000);
});

По завершению промиса выведем его результат в консоль:

promise.then(function (result) {
  // выведет 'string'
  console.log(result);
});

Давайте теперь не будем сразу выводить результат, а как-то изменим его и вернем через return:

promise.then(function (result) {
  return result + "!";
});

В этом случае мы можем к результату нашего then применить еще один then, создав тем самым цепочку методов. При этом в результат следующего метода будет попадать то, что вернул через return предыдущий:

promise
  .then(function (result) {
    return result + "!";
  })
  .then(function (result) {
    // выведет 'string!'
    console.log(result);
  });

Таким образом можно построить цепочку какой-угодно длины:

promise
  .then(function (result) {
    return result + "1";
  })
  .then(function (result) {
    return result + "2";
  })
  .then(function (result) {
    return result + "3";
  })
  .then(function (result) {
    // выведет 'string123'
    console.log(result);
  });
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг