Разберемся с асинхронностью в JavaScript, выберемся из callback hell, пообещаем разобраться с обещаниями, посмотрим на async/await, узнаем, что не все await одинаково полезны, а в конце эпично уйдем в закат.
Иначе говоря, простым языком обсудим важные темы:
– цикл событий в браузере (event loop)
– очередь задач (tasks queue) и микрозадач (microtasks queue)
– функции обратного вызова (callback)
– обещания (promise)
– сопрограммы или корутины (coroutine)
– async и await
– состояние гонки (race condition)
– микропаттерны для оптимизации debounce и throttle