Встречается на собеседованиях • сегодня

На замену чего пришел Promise

Promise пришел на замену callback-функциям (колбэкам) для работы с асинхронным кодом. Основные проблемы колбэков, которые решают промисы:

  1. Callback hell (ад колбэков) - вложенные колбэки делали код нечитаемым
  2. Сложность обработки ошибок (error-first callbacks)
  3. Невозможность легко комбинировать асинхронные операции

Пример с колбэками:

js
getData(function(a) {
  getMoreData(a, function(b) {
    getMoreData(b, function(c) {
      // callback hell
    })
  })
})

Тот же код с промисами:

js
getData()
  .then(a => getMoreData(a))
  .then(b => getMoreData(b))
  .then(c => { /* clean code */ })

Промисы предоставляют цепочку then/catch для последовательных операций и единый способ обработки ошибок.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы