Event Loop, промисы и this: 12 задач с собеседований
АйТи Птица
Event Loop, промисы и this: 12 задач с собеседований
109 просмотров · 7 дней назад
АйТи Птица
41 подписчик
109 просмотров · 7 дней назад
Разбираем 12 реальных задач с собеседований: порядок вывода в Event Loop, промисы, замыкания, потеря контекста this и живой лайвкодинг promisePool. Все задачи — из собесов, которые ученики проходили за последние две недели.
📌 В ЭТОМ ВИДЕО:
• Event Loop: микрозадачи, макрозадачи и таймер, созданный из микрозадачи
• Промисы: возврат промиса из then, throw и finally, цепочка catch
• Замыкания: два независимых счётчика makeCounter
• this: потеря контекста в setTimeout и что делает повторный bind
• promisePool — ограничение одновременных задач, полный разбор решения
• flatten с глубиной и подвох с отрицательным значением
• try/finally в async: почему return из finally съедает результат try
📚 База с задачами как всегда пополняется (с ссылками и таймкодами) и как всегда можете её забрать в моём телеграм канале https://t.me/it_ptitsa/642
⏱ ТАЙМКОДЫ:
00:00 Вступление и план созвона
00:21 setTimeout, микрозадача и таймер, созданный из неё
02:58 await null против await Promise.resolve()
07:46 Порядок вывода: 10 выражений подряд
16:37 Promise.reject и цепочка then/catch
21:00 throw в then и finally перед catch
23:07 Возврат промиса из then: сдвиг на два тика
28:22 Блок 2: замыкания, контекст, объекты
32:46 makeCounter: два независимых счётчика
40:22 promisePool: ограничение одновременных задач
1:09:24 flatten с указанной глубиной
1:27:41 this и bind: потеря контекста в setTimeout
1:36:55 try/finally в async-функции
1:47:28 updateUsers: filter, map и вариант через reduce
💬 Есть вопросы? Пиши в комментарии!
#frontend #javascript #eventloop #itbird #программирование