Цепочка из Promise

Цепочка из Promise ооблегчает написания кода для определенных сочетаний асинхронных событий.

Идея состоит в том, что помещать return new Promise() в теле функции. Вызов такой функции генерирует первый промис. Затем в цепочке .then() помещается имя функции с promise. Метод .then() вызывает функцию по имени и тем самым генерирует следующий promise в цепочке. Последним


function a () {return new Promise () }            
function b () {return new Promise () }            
function c () {return new Promise () }

 b().then(a)
    .then(a)
    .then(c)
    .then(data => console.log('делеам что-то'))
        

В примере ниже продемонстрировано как добиться срабатывния на уникальную последовательность нажатия кнопок. Нажатие BAAC будет выведено на экран. Нажатие других сочетаний будет проигнорировано и будет выводиться только последняя нажатая буква.