Показать сообщение отдельно
  #8 (permalink)  
Старый 14.11.2019, 16:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,135

последовательное выполнение Promise
Nlk,
как я понимаю последовательность ...
const data = [
{ms : 5000, fn : () => console.log("1")},
{ms : 4000, fn : () => console.log("2")},
{ms : 1000, fn : () => console.log("3")},
{ms : 4000, fn : () => console.log("4")},
{ms : 2000, fn : () => console.log("5")}
];

data.reduce((promise, item) => {
  const {ms, fn} = item;
  return promise.then(() => new Promise((resolve, reject) => {
        setTimeout(()=> (fn(),resolve()), ms)
      }));
}, Promise.resolve());

Последний раз редактировалось рони, 14.11.2019 в 16:18.
Ответить с цитированием