Как правильно начать цепочку промисов?

182
05 июля 2019, 18:00

Имеется 2 обычных функции , f1() и f2(). Вторая должна выполнится после окончания выполнения первой . Правильным ли является решение снизу или есть более короткий путь решения без Promise.resolve()?

Promise.resolve() 
.then(f1) 
.then(f2) 
.catch(error => console.log(error));

Answer 1

Если есть вопрос по порядку выполнения, полагаю, что "обычные функции" - асинхронные, т.е., в том числе, возвращающие promise.
В этом случае предложенный вариант самый короткий и кросс-браузерный.
Есть еще такой.

function f1() { 
  return new Promise((resolve) => { 
    setTimeout(() => { 
      console.log('f1 done'); 
      resolve('f1'); 
    }, 2000); 
 
  }); 
} 
 
function f2() { 
  return new Promise((resolve) => { 
    setTimeout(() => { 
     console.log('f2 done'); 
     resolve('f2') 
    }, 1000); 
  }); 
} 
 
 
(async () => { 
  await f1(); 
  await f2(); 
})()

READ ALSO
как указать PHPStorm свою JS библиотеку, для того чтобы он видел ее методы?

как указать PHPStorm свою JS библиотеку, для того чтобы он видел ее методы?

Шторм не видит мою библиотеку, как я не пытался ее подключить глобальноТе библиотека по факту доступна на данной странице в глобальной области...

161
Яндекс поделиться изменить title кнопки

Яндекс поделиться изменить title кнопки

Проблема с яндекс share, добавляю vkontakte, facebook, twitter, при hover у кнопки vkontakte атрибут "vkontakte" клиент хочет при hover title 'VK'

178
Разбить строку в массив по первому пробелу

Разбить строку в массив по первому пробелу

Есть строка, допустим 'Вот такая вот строка', как её разбить по первому пробелу, чтобы получить вот такой массив ['Вот','такая вот строка']?

186
Сортировка двумерного массива чисел Java Script

Сортировка двумерного массива чисел Java Script

Помогите написать функцию, которая будет сортировать по возрастанию этот двумерный массивЗаранее спасибо!

193