@pragmatik Проще наверное ответить "потому что" ))) Просто даже если писать на чистом js, то результат будет такой же, чтобы работать с асинхронными вызовами там и существуют калбеки, промисы, генераторы и наконец await/async. В бас же реализован свой api с которым и надо работать, тк этого его внутренние функции и использовать с ними например промисы не получится.