Примеры кода: github.com/HowProgrammingWork... Курс «100 лекций по программированию» habr.com/post/427799/ #асинхронное #программирование #nodejs #javascript
Пікірлер: 23
@Zaziqul2 жыл бұрын
Очень нравится когда запись из аудитории с эхом и шумом кулера. Ощущение лучше в отличии от домашних видео.
@victorklimov52543 жыл бұрын
Спасибо огромное!!!! Наконец-то смог более-менее разобраться как "под копотом" себя ведут промисы и await.
@timashoff Жыл бұрын
Спасибо! фабрика пришествий улыбнула)
@aysommer4 жыл бұрын
Спасибо за лекции.
@user-wv7tx4mb6d3 жыл бұрын
Спасибо за объяснение таких сложных тем))
@NicolayKrasotkin2 жыл бұрын
Все круто! Небольшая придирка к произношению слова Promise, она так и читается -- "промис", а не "промайс". Это, видимо, какая-то распространенная недопонимание чтения слов, что заканчивается на "-ise", ведь многие слова с этим окончанием так и читаются, как "-айз": ентерпрайз, райз и т.д. Например, есть у меня есть пара знакомых, которые произносят слово Service как "сервайс"
@Fodintsov3 жыл бұрын
13:21 "Просто это жоподельная константа, я не знаю, чему она должна быть равна". Я понимаю, что именно там звучит, но... :)))
@TheTexPro2 жыл бұрын
Спасибо большое!
@Antonio-fm1sq2 жыл бұрын
Спасибо!
@Fodintsov3 жыл бұрын
Мало. :( Не устаканивает знания. Надо еще что-нибудь почитать, посмотреть, порешать, да так, чтобы все эти переходы от асинхронщины к синхронщине и от async к промисам улеглись в голове. Ессно, я про себя только говорю. Наверное, пойду к Кантору, "Вы не знаете JS", Фланагану и на CodeWars. Тяжко дается эта тема почему-то.
@user-fm5mu9cl5z4 жыл бұрын
У вас в thenable (9 пример) не работают цепочные вызовы метода then. Я исправил, сделал пуллреквест
@romankotenko74 жыл бұрын
привет. вопрос не по теме. 6:17 "сплит, двоеточие и там асинхронную лямду". Если под лямбдой подразумевается стрелочная функция, то ее this не найдет split. const obj = { name: 'Marcus Aurelius', split: async (sep = ' ') => { return this.name.split(sep); } }; (async () => { console.log('await obj.split() =', await obj.split()); })(); // UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'split' of undefined Или что имеется в виду?
@vladiusvostokus Жыл бұрын
У лямбд нет this.
@superbrothers86374 жыл бұрын
Привет. Почему __proto__ - жлобство, а Object.getPrototypeOf() - прилично?
@TimurShemsedinov4 жыл бұрын
Потому, что в стандарте __proto__ нет и реализация доступа к скрытому полю отдается на откуп среде запуска
@superbrothers86374 жыл бұрын
@@TimurShemsedinov В стандарте JS? Т.е. работает либо под Нодой, либо под браузером? Спасибо.
@dmytrohaponov5517 Жыл бұрын
Для чего нам вообще нужен асинхронный конструктор, где мы его можем применить вообще?
@TimurShemsedinov Жыл бұрын
Например логгер, соединение с базой, сетевой протокол, да что угодно, чтоб не делать отдельный метод инициализации
@Zaziqul2 жыл бұрын
Придумал другой async constructor(){(async()=>await fn())();return this }
@TimurShemsedinov2 жыл бұрын
Тут конструктор вернет this до исполнения await
@Zaziqul2 жыл бұрын
@@TimurShemsedinov ох. думал что return синхронно после iife вызовется. Второй час пытаюсь придумать как сделать async constructor что бы потом require промис не возвращал. Пробовал возвращать промис из конструктора а потом так: (async () => { module.exports = await new UserService(); })(); но так методы после require у инстанса не видны. Как я понимаю бессмысленная затея так как require из кеша будет дергать underfined если инстанс класса не успеет resolve(this). В любом случае нужно require оборачивать в await