4:16 - порядок такой не потому что запрос к серверу дольше, а потому что fetch возвращает промис, а промисы исполняются после основного стека вызова, так как сидят в microtask queue.
Хммм... - А давайте чтобы у нас код не был последовательным придумаем асинхронные вызовы. - Ой, а у нас же нарушается последовательность выполнения кода и он становится асинхронным. - А давайте мы придумаем ожидание выполнения асинхронного кода, чтобы выполнение его было последовательным и ожидаемым.
@@dimape.4180 В том то и дело, что с await это выглядит как обычный синхронный код. Это не go рутины и не фоновые задания 1С. Кстати почти те же йайтса в 1С, только там сначала реализовали через широковещание - ОбработкаОповещения, а потом через Acync (Асинх) Await (Ждать). И в такой конструкции результат выглядит как обычный синхронный код. Только выполняется раз в 10 медленнее. А знаете почему? Потому что 1С тоже имеет (какое слово то гадкое) web клиент. И проблема в том, что браузер ругается на синхронные вызовы и не даёт их выполнять. То есть средство просмотра (браузер) де-факто устанавливает правила для языков программирования и фреймворков.
Александр, всегда с удовольствием смотрю ваши видео, хоть вроде и не новичок ). Не примите за занудство, но попробуйте писать в vscod-e не console.log(), а просто log и клавиша Tab. И перемещать строки или выделенные фрагменты кода, когда вы меняли, например местами функции f1() и f2(), можно Ctrl + Shift + стрелки вверх/вниз )), а не копипастом. С уважением. Спасибо за ваш труд, жму руку. )
Правильно я понял, если например потом с данными нужно делать определенную логику а не просто текст, например в функции f3 то мы там просто ее и пишем ?
Спасибо, Александр ! Вы один из тех немногих кто расказывает о сложном простыми словами и способствует развитию хода мысле в ученике. По моему разумению именно таким и должен быть настоящий УЧИТЕЛЬ. ------------------------- Посдскажите пожалуйста, какие инструменты нужно задействовать в JS чтобы добиться четкого выполнениея таймингов ? Мне нужно чтобы функции вызывались с четкой переодичностью в 1сек и 500мс и весьма желайтельно чтобы этот таймер имел общее основание с Date(), поскольку именно оттуда я беру текущее время.
@@enjoymtx , не получается его отследить потому что тайминги Date() и Setinterval просто не совпадают. Может в системе Можна как то выйти на единый источник тактирования ? Здесь нужно понимать тонкости работы движка js.
@@enjoymtx , к примеру. Через setinterval я вызываю ф-цию каждую секунду, в начале этой ф-ции я проверяю равны ли мс обьекта Data() нулю. И вот здесь и трабла, они никогда не равны нулю. Как тогда я спрашиваю выдержать точные интервалы ?
Это определено одно из лучших объяснений, а самое главное без таймаутов и интервалов со стрелочной функцией, который только запутают новичка. Спасибо, подписываюсь!
Гениальный язык. И без async функция асинхронна и с async асинхронна. Главное, надо было все сделать работающим асинхронно, а потом выдумывать кастыли как все это синхронизировать. Просто гениально.
Александр,как всегда респект. Наконец-то, кто-то понятно и на пальцах объяснил асинк-эвеит. А с помощью промисов, такого же результата можно добиться, посмотрев вашу лекцию про промисы?
Хороший пример, спасибо. Еще можно разобрать на вашем примере обработку ошибок при асинхронных запросах. На простых примерах, как правило это упускают, а на продакшен без этого никак.
вы все такие молодцы ) а когда появится такая услуга чтобы вот ну я завис к какой то теме например асинхронность и мне нужно чтобы учитель мне показал че и как ) а оплата по зеленым оценивается ну как бы час 50 долларов или 60 ну если скидка есть то буду часто обращаться )
@@itgid я хочу заниматься индивидуально по разным вопросам я иду по пути Fullstack если мы могли бы оказывать услуги то мы могли бы вместе работать я был бы вашим учеником VIP
Спасибо.наконец понял я как правильно прописывать асинк эвэйт, единственное, наверное можно было бы внутри каждой функции не прописывать async await? или обязательно дважды прописывать??
4:16 - порядок такой не потому что запрос к серверу дольше, а потому что fetch возвращает промис, а промисы исполняются после основного стека вызова, так как сидят в microtask queue.
топовый коммент. об этом надо было рассказать
те если делать async/await без fetch то порядок будет любой?
Спасибо
@@faizulla5838 функция async всегда возвращает промис
Интересно, а где в данном случае основной стек вызова?
Крайне важный коммент, в топ.
Долгих лет здоровой жизни вам!) Всегда радуйте нас вашим понятным контентом!
Через какие мучения пришлось пройти, что бы это понять! У вас максимально доступно, большое, человеческое спасибо)
да хватит это легко
ну наконец-то!!!! хоть где-то реальный кейс с запросом на сервак без этих сеттаймаутов! Спасибо)
Было понятно, но всё-равно в уме витали какие-то сомнения. Благодаря такой подаче они полностью развеялись. Спасибо
Это гениально! Большое спасибо ! Самое понятное объяснение которое видел когда либо!
Хммм...
- А давайте чтобы у нас код не был последовательным придумаем асинхронные вызовы.
- Ой, а у нас же нарушается последовательность выполнения кода и он становится асинхронным.
- А давайте мы придумаем ожидание выполнения асинхронного кода, чтобы выполнение его было последовательным и ожидаемым.
хмм.. а давай при каждом запросе на сервер, если там задержка, будем ковырять в носу и ждать ответа и не будем придумывать асинхронные вызовы
@@dimape.4180 Нет, давайте делать это, покуда будем ожидать (await) выполнение асинхронных вызовов.
Нет давайте поделаем что-нибудь другое, это же асинхронный вопрос.
@@dimape.4180 В том то и дело, что с await это выглядит как обычный синхронный код. Это не go рутины и не фоновые задания 1С. Кстати почти те же йайтса в 1С, только там сначала реализовали через широковещание - ОбработкаОповещения, а потом через Acync (Асинх) Await (Ждать). И в такой конструкции результат выглядит как обычный синхронный код. Только выполняется раз в 10 медленнее. А знаете почему? Потому что 1С тоже имеет (какое слово то гадкое) web клиент. И проблема в том, что браузер ругается на синхронные вызовы и не даёт их выполнять. То есть средство просмотра (браузер) де-факто устанавливает правила для языков программирования и фреймворков.
Если их придумали значит в них была потребность для опред. ситуаций.
Кучу видео посмотрела и пришла к итого, что ваши видео самые доступные, а также результативные! Огромное вам спасибо!
Огромное спасибо. Благодаря вашему обьяснениям смогла ответить на вопросы на собеседовани и меня взяли на стажировку!
Как дела спустя год?
@@braingriffin946
Видимо, плохо
да как у вас дела?
Посмотрела видос, взяли на работу, за это время никто не оставлял комментарии под видео и она написала первый комментарий. Автор, самому не смешно?
@@avs1978в чем прикол?
Самый лучший канал по JavaScript, постараюсь и платный ваш курс пройти!
У вас всегда уроки понятно о сложном. Большое спасибо, было очень полезно. Размял свои мозги!))
Лучшее объяснение асинхронности из всего что есть на русскоязычных ресурсах!
один из лучших каналов по веб-разработке! ВСе понятно и ясно!
Лучшее описание, что мне встретилось.
это лучшее объяснение async await что может быть вообще!!!!!!
Спасибо большое, это четвертое видео которое я смотрю на эту тему и только сейчас стало понятно
Спасибо огромное, посмотрел уже 3 видео и на вашем все встало на свои места
Вы отличный учитель!Спасибо Вам большое!
Шикарно, как раз на главе по асинхронности в Eloquent JavaScript и понимаю, что это видео хорошенько мне поможет) Спасибо
Это очень грамотно разжевано. После 5 -6 видосов на эту тему, этот самый лаконичный и понятный.
Большое спасибо, Сань, твоё видео помогло мне выйти из ступора и решить мою проблему)
Александр, всегда с удовольствием смотрю ваши видео, хоть вроде и не новичок ). Не примите за занудство, но попробуйте писать в vscod-e не console.log(), а просто log и клавиша Tab. И перемещать строки или выделенные фрагменты кода, когда вы меняли, например местами функции f1() и f2(), можно Ctrl + Shift + стрелки вверх/вниз )), а не копипастом. С уважением. Спасибо за ваш труд, жму руку. )
Про log + tab тоже не знал. Только log + enter. Спасибо)
@@untiweuntiwe7415 я кстати, далеко не сразу в работе с вс-кодом узнал про передвижение строк и очень был обрадован этой фичей )
Спасибо за объяснение, единственный кто легко донес смысл async await)))
Спасибо, очень полезное видео! наконец-то поняла тему.
Спасибо , очень полезно!! понятно все очень!! теперь не много перепишу свой телеграмм-бот.
как всегда шикарно рассказано на пальцах
Спасибо за такое простое и понятное объяснение
Александр Лущенко лучший блогер, коучер и программист. Спасибо огромное!!!!!!!!!!!!!!
Спасибо огромное, у Вас очень хороший подход и объяснение технологии. Успехов!
Спасибо, только после этого видео наконец понял что это такое!)
Лучшее объяснение асинхронности, огромное вам спасибо!
Толково! Спасибо за пример, очень наглядно и понятно.
Огромное спасибо!!! Всё доходчиво на 150%, закрыли мои многие вопросы
лучшее видео эвер, спасибо большое!!!
Действительно полезное видео, объясняющее работу асинхронных функций
Отличное объяснение, спасибо за старания!
не ожидал вас тут увидеть:)
@@Lunar66 😎😎
Здорово, все по делу без воды, спасибо
Правильно я понял, если например потом с данными нужно делать определенную логику а не просто текст, например в функции f3 то мы там просто ее и пишем ?
Спасибо, Александр !
Вы один из тех немногих кто расказывает о сложном простыми словами и способствует развитию хода мысле в ученике.
По моему разумению именно таким и должен быть настоящий УЧИТЕЛЬ.
-------------------------
Посдскажите пожалуйста, какие инструменты нужно задействовать в JS чтобы добиться четкого выполнениея таймингов ?
Мне нужно чтобы функции вызывались с четкой переодичностью в 1сек и 500мс и весьма желайтельно чтобы этот таймер имел общее основание с Date(), поскольку именно оттуда я беру текущее время.
@@enjoymtx , не получается его отследить потому что тайминги Date() и Setinterval просто не совпадают.
Может в системе Можна как то выйти на единый источник тактирования ? Здесь нужно понимать тонкости работы движка js.
@@enjoymtx , к примеру. Через setinterval я вызываю ф-цию каждую секунду, в начале этой ф-ции я проверяю равны ли мс обьекта Data() нулю. И вот здесь и трабла, они никогда не равны нулю. Как тогда я спрашиваю выдержать точные интервалы ?
это делается через рекурсивный setTimeout
спасибо громадное Вы один кто так доходчиво рассказал
Ви найкращий вчитель IT
Наконец то, классно обьяснил ! , уникально, супер, понятно !
Это определено одно из лучших объяснений, а самое главное без таймаутов и интервалов со стрелочной функцией, который только запутают новичка. Спасибо, подписываюсь!
Такие подачи для того что бы показать какой он крутой программист типа владилена
@@digitalturkistan1857 нет. Данный автор никак не хвастается и не "намекает" на то, какой он классный программист
Большое спасибо за видео! очень понятное объяснение!
Чертов Гений❤❤❤🎉
Спасибо! Стало понятнее!
Спасибо что делаете упор на простоту обьяснения
Спасибо за видео, простой и понятный пример!
Спасибо) Очень подробно объяснили)
Гениальный язык. И без async функция асинхронна и с async асинхронна. Главное, надо было все сделать работающим асинхронно, а потом выдумывать кастыли как все это синхронизировать. Просто гениально.
Единственное, что понял, что асинхронность нужна, чтобы функции работали синхронно. Потому что без асинхронности они работают...асинхронно.
Очень хорошее обьяснение для новичков! доступно! благодарю!
дуже доступно та легко
дякую)
Наконец-то, без таймеров, на нормальном реальном примере, ободряю.
Круто. Не знал за такую тему! Спасибо
Спасибо)) очень помог ваш видос))
Очень доступно объяснили такую сложную тему, спасибо
Ради этого урока я написал свой сервер! 😎
Очень хорошее видео! Спасибо за труд!
Александр,как всегда респект. Наконец-то, кто-то понятно и на пальцах объяснил асинк-эвеит.
А с помощью промисов, такого же результата можно добиться, посмотрев вашу лекцию про промисы?
Наконец то без циклов и таймаутов
и человек и видео прекрасны спасибо большое
Очень доступная подача. Спасибо!
Все равно до конца не понял. Но это лучшее объяснение что я видел. Спасибо!
Спасибо за видос ждём по больше ещё
Дякую, як завжди просто і доступно 👍
Хороший пример, спасибо. Еще можно разобрать на вашем примере обработку ошибок при асинхронных запросах. На простых примерах, как правило это упускают, а на продакшен без этого никак.
просто в async функции используешь try-catch и все
Спасибо! Наконец то все понятно стало!
Очень благодарен. Лущенко the best ))))
Офигенно объяснили!!! Спасибо!
Good work. Awesome explanation!👍
Спасибо, помог разобрасять с промисами и эсин эвей.
Доступное и понятное объяснение, спасибо. Интересно посмотреть код сервера. Может есть пример где-нибудь на github?
Александр не лучше ли для эмуляции сервера использовать jsonplaceholder ? мне кажется будет нагляднее и интереснее
мегачеткий видосик - впрочем как обычно
Все просто и понятно. Спасибо
Суть понятна, спасибо. Функция go имеет лишний async, ну это мелочи
С меня подписка! Вот так нужно объяснять чайникам))
Бомба 💣!
Благодарю
как всегда супер!
Спасибо большое! Очень круто объяснил
Огромное спасибо! просто и понятно
Наконец-то стало понятно, что async await фактически делают из асинхронного кода подобие синхронного.
Спасибо большое! 👍
Ну это и лекция. Спасибо больщое
Не совсем пойму разницу с Промисами(
фетч вернет промис, и зеном обработаем по цепочке и по сути это тоже самое?
вы все такие молодцы ) а когда появится такая услуга чтобы вот ну я завис к какой то теме например асинхронность и мне нужно чтобы учитель мне показал че и как ) а оплата по зеленым оценивается ну как бы час 50 долларов или 60 ну если скидка есть то буду часто обращаться )
я вас не понял....
@@itgid я хочу заниматься индивидуально по разным вопросам я иду по пути Fullstack если мы могли бы оказывать услуги то мы могли бы вместе работать я был бы вашим учеником VIP
спасибо, стало гораздо понятнее)))
Спасибо.наконец понял я как правильно прописывать асинк эвэйт, единственное, наверное можно было бы внутри каждой функции не прописывать async await? или обязательно дважды прописывать??
Лучший айтиевангелист
Не. Максимум айтиатеист. Я за то что айти не является чем-то недостижимым.
крутое видео!
0:23 так вы рассказываете про асихроннные функции или про то как асинхронные сделать синхронными?
Все супер, но Все же нужно пересмотреть, очень интерестно работа над ошибками
Класс!
Что будет, если асинк авэйт оставить только у обертки, а сами ф1-ф3 обычными обозвать без авэйтов внутри?
О, никогда ещё практически первым не писал коммент. Лайк в любом случае не глядя. Жду с нетерпением вебтока 4 февраля в эльбрускэмпе.
отлично!
Класс, спасибо)
спасибо, теперь понял
Заебись , по человечески
Респект!