03. Асинхронность в JS - Григорий Бизюкин
Разберемся с асинхронностью в JavaScript, выберемся из callback hell, пообещаем разобраться с обещаниями, посмотрим на async/await, узнаем, что не все await одинаково полезны, а в конце эпично уйдем в закат.
Иначе говоря, простым языком обсудим важные темы:
- цикл событий в браузере (event loop)
- очередь задач (tasks queue) и микрозадач (microtasks queue)
- функции обратного вызова (callback)
- обещания (promise)
- сопрограммы или корутины (coroutine)
- async и await
- состояние гонки (race condition)
- микропаттерны для оптимизации debounce и throttle
Пікірлер: 39
Обожаю этого лектора! Всегда классно и интересно рассказывает, а главное - с любовью к делу.
Лучшей лекции по асинхронному программированию я не встречал. Каждая минута - кладезь полезной информации
Нет слов, с первых минут затянуло до самого конца. 👏
Григорий, спасибо за замечательную лекцию! Одно из лучших видео по js на моей памяти
Спасибо Григорию, крутейшая лекция. Отлично упаковал информацю - концентрированные систематизированные знания + интересная подача 👍
Какая крутая лекция!🔥👏🏻 Спасибо!
Крутейшая лекция и лектор, большое спасибо!
Григорий, респект! Подача - супер!
Мой любимый лектор.
Григорий Бизюкин красавчик
потрясающее изложение! Григорий, Вам однозначно нужен свой ютуб-канал!
Лучший просто
Спасибо, интересно было послушать)
Лекцию супер, а можно ли где-то скачать презентацию? Спасибо!
Спасибо тебе дядь
Здравствуйте, есть ли презентация в открытом доступе?
Гений
материал из книги you don't know js Кайла Симпсона)
Ссылки на презентации выкладывайте, пожалуйста, ШРИ.
Скажите пожалуйста - fetch относится к микро или макрозадачам? И почему?
@kotikvacia9970
Жыл бұрын
Fetch возвращает Promise и поэтому относится к микротаскам, но есть тонкости в порядке setTimeout(() => {...}, 0) и fetch (если интересно почитать, то вот вопрос на stackoverflow questions/61890737/executing-priority-of-fetch-and-settimeout-in-chrome)
@velikorossnationalist4259
Жыл бұрын
@@kotikvacia9970 спасибо за ответ!
ЙЫЛД
49:15
Very useful, especially in rusland language domain
ПРОШУ ВАШЕГО ВНИМАНИЯ!!! ПОЛНЫЙ РАЗБОР И РАЗНОС!!!! --> ⎡msk⎦ Разбираем видео: "Продвинутый JS (Григорий Бизюкин)"
@vastargazing8957
3 ай бұрын
Сам то проверял его утверждения? Слепо копируешь.
где ссылки из видео?
Хоть бы дали ссылку на презентацию. Штош... Комментарии с ссылками сразу удаляют...
@devofy
2 жыл бұрын
А где эти ссылки берут?
@MrLuckfinder
2 жыл бұрын
@@devofy Яндекс... Найдётся, наверное...
Таймкоды бы еще добавить
про генераторы нихера непонятно, пока не прочитаешь на learn.javascript не поймешь, как можно пробегаться по такой куче сложных тем за час. эта лекция рассчитана только для вводного ознакомления. но никак не для того чтобы понять
местами слишком сложно, и непонятно
На слайде 57 ошибка. Promise.race разрешит первое значение массива, т.е. ананас
@MashaKovach
2 жыл бұрын
тут как бы не первое значение по счету получим, а более быстрое, прям как в примере с логами в начале видео, промису с ананасом еще нужно выполнится, а арбузик получим сразу
@Londeren
Жыл бұрын
@@MashaKovach Promise.race([Promise.resolve(1), 2]).then(console.log) Можете протестировать, выведется 1
40:01 Promise.race([Promise.resolve("ананас"), "арбуз"]) Странно, но возвращает не арбуз, а ананас.
ПРОШУ ВАШЕГО ВНИМАНИЯ!!! ПОЛНЫЙ РАЗБОР И РАЗНОС!!!! --> ⎡msk⎦ Разбираем видео: "Продвинутый JS (Григорий Бизюкин)"