Урок 8. JavaScript. Как работает Async, Await. Работа с сервером c fetch

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ก.ค. 2019
  • Эксклюзивный контент на моем Boosty: boosty.to/vladilen
    Telegram: t.me/js_by_vladilen
    Instagram: / vladilen.minin
    Roadmap по каналу:
    vladilen.notion.site/Roadmap-...
    Урок 8. JavaScript. Как работает Async, Await. Работа с сервером c fetch
    В ролике я расскажу о том, как работают операторы async await в Javascript на примере работы с сервером с методом fetch
    Вы узнаете как применять async await и как обрабатывать ошибки, если они есть
    Сложный JavaScript простым языком:
    • Урок 1. JavaScript. Чт...

ความคิดเห็น • 276

  • @VladilenMinin
    @VladilenMinin  7 หลายเดือนก่อน

    Эксклюзивный контент на моем Boosty: boosty.to/vladilen

  • @tyortyo
    @tyortyo 4 ปีที่แล้ว +28

    Офигенное объяснение. Здорово, что приведено сравнение с промисами, тогда все понятно становится! Супер

  • @mikurrey416
    @mikurrey416 4 ปีที่แล้ว +7

    Большущее спасибо :) Без таких знаний асинхронность не хило выносит мозг)))

  • @qazxswedc389
    @qazxswedc389 5 ปีที่แล้ว +9

    огромное спасибо за видео!!! такого понятного и простого объяснения async/await я еще не встречал. очень классные и понятные видео

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว +1

      Благодарю за отзыв, рад такому результату)

  • @unknownWakeborder
    @unknownWakeborder 3 ปีที่แล้ว +6

    Я в свое время так намучался с получение данных с апи.... а тут было все так доступно. Очень полезно, спасибо тебе за контент!

  • @nivaech
    @nivaech 4 ปีที่แล้ว +4

    Владилен, спасибо. Благодаря твоему каналу время карантина вследствие чертового коронавируса проходит как нельзя плодотворно.

  • @mgm_smile
    @mgm_smile 5 ปีที่แล้ว +122

    Как всегда все четко и по теме. Владилен ты делаешь огромный вклад в развитие ру комьюнити, спасибо тебе =)

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว +12

      Благодарю за отзыв)

  • @Wraith2401
    @Wraith2401 5 ปีที่แล้ว +28

    на мой взгляд самое доступное объяснение работы async/await в рунете. лайк/подписка

  • @user-tg9wd2hm1g
    @user-tg9wd2hm1g 4 ปีที่แล้ว +5

    Благодарю Вас Владилен! С Вами очень интересно изучать JavaScript!)

    • @awenn2015
      @awenn2015 3 ปีที่แล้ว +1

      Согласен, у других смотрел так и не понял что такое promise, async and await, методы массивов, которые новые map и тд, а тут все сразу стало понятно, и операторы rest и spread туда же, столько полезных вещей которыми я раньше не пользовался, жаль конечно))

  • @uracan7872
    @uracan7872 5 ปีที่แล้ว +10

    Спасибо за видео! Proxy теперь нужен)

  • @svdl3000
    @svdl3000 4 ปีที่แล้ว +1

    Отличное видео - аккуратное объяснение важных истин простым языком.

  • @Abdul-hy4cy
    @Abdul-hy4cy 2 ปีที่แล้ว

    Как ты круто объясняешь! Последовательно, по уровню сложности.

  • @dushnilas
    @dushnilas 3 ปีที่แล้ว +4

    Спасибо тебе Владилен за твои видосы.

  • @user-wj9jo6wc6c
    @user-wj9jo6wc6c 2 ปีที่แล้ว

    Блин, ты крут, человек! Учился по твоему ангуляр курсу, теперь вот доучиваю в ютубе. Супер!

  • @lumeaceaiuluisrl6343
    @lumeaceaiuluisrl6343 3 ปีที่แล้ว +2

    Владилен, спасибо за урок!

  • @mumin_f
    @mumin_f 4 ปีที่แล้ว +2

    Спасибо! Переписывал store для авторизации из урока по Vue CRM, там была готовая библиотека firebase, а мне надо было через API реализовывать. Это видео очень выручило!

  • @Vlad-em1bx
    @Vlad-em1bx 4 ปีที่แล้ว +16

    Это лучший материал по JS на русскоязычном youtube.
    Отдельно хотелось бы поблагодарить Вас Владилен за курс по Vue. Он превосходен. Он помог мне довольно быстро вникнуть во Vue.
    Посоветовал его одному коллеге верстальщику, он также остался им очень доволен.
    Спасибо Вам огромное! :)))

  • @user-kg6fz5tz2b
    @user-kg6fz5tz2b 5 ปีที่แล้ว +5

    Спасибо, Добрый Человек!!!

  • @damir-n1
    @damir-n1 2 ปีที่แล้ว

    Спасибо Вам большое, Владилен. Очень доступно.

  • @s.konstantin
    @s.konstantin 5 ปีที่แล้ว +1

    Спасибо! Как всегда все понятно.
    Красавчик!

  • @parlaitaliano
    @parlaitaliano ปีที่แล้ว

    Я что-то поняла, неужели, офигеть! но боюсь что окажется, что рано радуюсь, что все-таки не поняла, потому что я не могу поверить, что я наконец это поняла. Спасибо Вам

  • @RewCSharp
    @RewCSharp 6 หลายเดือนก่อน

    Спасибо за урок!

  • @yakut54
    @yakut54 4 ปีที่แล้ว

    Влад, ты красавчик! Спасибо тебе за науку! Вкладываешь знания в наши бестолковые головы.

    • @VladilenMinin
      @VladilenMinin  4 ปีที่แล้ว +4

      Не думаю, что они бестолковые, иначе как бы они нашли мой канал:)
      Шучу конечно, но за отзыв спасибо

  • @user-yx4ov2xx8s
    @user-yx4ov2xx8s 4 ปีที่แล้ว +2

    Супер видео! Спасибо вам! Плейлист тоже классный!

    • @VladilenMinin
      @VladilenMinin  4 ปีที่แล้ว

      Благодарю за отзыв)

  • @dartoranges
    @dartoranges 3 ปีที่แล้ว

    Владилен ты не представляешь как ты мне помог этим уроком!!!!

  • @PizekattoX
    @PizekattoX 4 ปีที่แล้ว

    Отлично обяснил, понятно и без лишних слов

  • @enotus_chang
    @enotus_chang ปีที่แล้ว

    Пожалуй, самое понятное объяснение. Спасибо.

  • @nicksimmons4722
    @nicksimmons4722 3 ปีที่แล้ว +4

    в прошлом году доходило долго, а в этом намного легче и уже сразу понятно)) очень информативные и понятные уроки) спасибо за труды

  • @user-un2wj8ee9s
    @user-un2wj8ee9s 4 ปีที่แล้ว +2

    Очень круто обьясняешь. Коротко и по делу!)) Pozdrawiam z Polski!!!

  • @user-om5co3nd8u
    @user-om5co3nd8u 2 ปีที่แล้ว

    Люблю такие видосы. Где не льют 50 минут теорию со слайдами на своем птичьем наречии, а за 14 минут на практике показывают как, да чё. Спасибо автору!

  • @user-lj8xm1ye7q
    @user-lj8xm1ye7q 3 ปีที่แล้ว

    Конструктивно и максимально доходчиво.

  • @user-uo8jd7ys2x
    @user-uo8jd7ys2x ปีที่แล้ว

    Очень подробно разжевал!спасибо огромное за труд

  • @Vlad-jp3co
    @Vlad-jp3co ปีที่แล้ว +5

    Твои уроки раскрывают суть каждой концепции. Ты описываешь проблему и механизм в языке, который эту проблему решает. Информация так усваивается намного лучше. В других уроках описывают некоторые факты о части языка и не говорят как это использовать и новичок не понимает как он это может применить. Спасибо большое за труд

  • @user-gu5ir3zs4v
    @user-gu5ir3zs4v 5 ปีที่แล้ว +2

    Это чертовски полезно

  • @nikdanik
    @nikdanik 5 ปีที่แล้ว +77

    Про веб воркеры было бы супер! Классный видос, лайк

    • @realfootball338
      @realfootball338 4 ปีที่แล้ว

      про sharedArrayBuffer семафоры мютексы и атомарные операции.

    • @awenn2015
      @awenn2015 3 ปีที่แล้ว

      Твоя мечта сбылась

    • @bekzhan356
      @bekzhan356 3 ปีที่แล้ว

      ещё вебсокеты каеф

  • @user-ml8hn5kg9e
    @user-ml8hn5kg9e 2 ปีที่แล้ว

    Спасибо за урок очень мощьный курс по JavaScript

  • @temirkhanamanbaev42
    @temirkhanamanbaev42 4 ปีที่แล้ว

    Классно объяснил, браво! Спасибо!

  • @sexy.big.monkey
    @sexy.big.monkey 5 ปีที่แล้ว +2

    Опа новый видосик! 😋

  • @admusmanov3009
    @admusmanov3009 ปีที่แล้ว

    Обожаю тебя!!!

  • @radikovichkz2470
    @radikovichkz2470 3 ปีที่แล้ว +9

    Владилен вы не поверите: но во время создания промиса вместо setTimeout(()=>r(),ms) можно просто записать setTimeout(r,ms); r - это есть resolve, и мы передаём ссылку на функцию в качестве колбека

  • @MrFeedme86
    @MrFeedme86 4 ปีที่แล้ว +1

    Владилен топ! Если у тебя будет своя школа, я пойду туда учиться :D

  • @Grigoren_com
    @Grigoren_com ปีที่แล้ว

    спасибо за ролик! очень полезная информация

  • @azalinka3721
    @azalinka3721 3 ปีที่แล้ว

    спасибо за такое прекрасное обьяснение!!!

  • @nikishiro8278
    @nikishiro8278 5 ปีที่แล้ว +8

    Спасибо. Про Webpack круто было бы послушать :)

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว +5

      Думаю сделаю быстрый курс по нему)

  • @bodomzor
    @bodomzor 5 ปีที่แล้ว +1

    Красава Вледилен!

  • @gorbulevsv
    @gorbulevsv ปีที่แล้ว

    Спасибо, все очень доступно!!!

  • @ammoney159
    @ammoney159 2 ปีที่แล้ว

    Спасибо большое за видосы красавчик!

  • @iznu3
    @iznu3 3 ปีที่แล้ว

    Спасибо за видео!

  • @imbaquad
    @imbaquad 5 ปีที่แล้ว

    Круто ! Спасибо)!

  • @void6237
    @void6237 ปีที่แล้ว +1

    "Фетчить некоторые туду", буду теперь это говорить когда меня спрашивают чем я занимаюсь

  • @Fxgleb
    @Fxgleb 4 ปีที่แล้ว +11

    Посмотрев этот ролик я прям осознал что такое асинхронность в жс и в чем разница между then и await (наконец таки)

  • @independent3253
    @independent3253 ปีที่แล้ว

    Круто 👍

  • @vladislavivanov4124
    @vladislavivanov4124 4 ปีที่แล้ว

    Спасибо! Лучший)

  • @sapperus
    @sapperus 4 ปีที่แล้ว

    Круто, спасибо!

  • @web2905
    @web2905 3 ปีที่แล้ว

    Спасибо за видео :)

  • @27sosite73
    @27sosite73 2 ปีที่แล้ว

    ska, ты топ, Владилен
    спасиобо

  • @onlynowmotivation
    @onlynowmotivation 2 ปีที่แล้ว

    Спасибо большое! От души!!!

  • @user-dc7ot2lm1m
    @user-dc7ot2lm1m 4 ปีที่แล้ว +1

    Спасибо, но это уже тяжеловато было понять) Усугубилось всё стрелочными функциями

  • @Pr0xytube
    @Pr0xytube 5 ปีที่แล้ว

    Спасибо, урок действительно полезный. Впрочем, как всегда)

  • @phonty29
    @phonty29 2 ปีที่แล้ว

    Your teaching is very good. Thank you

  • @artemijeka
    @artemijeka 2 ปีที่แล้ว

    Спасибо!

  • @user-gu5ir3zs4v
    @user-gu5ir3zs4v 5 ปีที่แล้ว +6

    Теперь уж точно прям очень нужен прокси

  • @sekirogenshiro2210
    @sekirogenshiro2210 4 ปีที่แล้ว

    хороший урок

  • @yuramaster4354
    @yuramaster4354 2 ปีที่แล้ว

    thank you again )

  • @user-qw9uo4wo5p
    @user-qw9uo4wo5p 3 ปีที่แล้ว

    Благодарю!!

  • @user-od6hi8we5p
    @user-od6hi8we5p ปีที่แล้ว +4

    Все-таки Promise и async/await одна из самых сложных тем в JS. Но после таких уроков все становится сразу понятно

  • @ssurrokk
    @ssurrokk 4 ปีที่แล้ว

    Спасибо

  • @talas12341
    @talas12341 4 ปีที่แล้ว +106

    всегда так - смотришь, всё понятно, начинаешь делать, ну нихуя не понятно‼ пока собственными ручками не сделаешь, хрен поймешь‼

    • @user-xd5td7px9t
      @user-xd5td7px9t 4 ปีที่แล้ว

      Это всегда так ! )

    • @konstantinsoluyanov8505
      @konstantinsoluyanov8505 4 ปีที่แล้ว +3

      сначала смотришь, потом делаешь, потом еще раз смотришь, благо youtube иногда подкидывает уже просмотренные ролики

    • @Lynatik001
      @Lynatik001 4 ปีที่แล้ว +1

      я помню когда делал все через then только, понимал что это крутая штука что позволяет дождатся асинхронной функции, словить результат и далее его обрабатывать. ну как асинк и авейт. про промисы вобще не шарил думал промис = асинхронному методу. типа так называют в яваскрипте просто так ХД)

    • @yaroslavzef7267
      @yaroslavzef7267 3 ปีที่แล้ว

      И это он еще не самый понятливый объяснятель)

    • @ricojohn8249
      @ricojohn8249 2 ปีที่แล้ว

      @@yaroslavzef7267 а кто самый понятливый?

  • @rvvvr
    @rvvvr 3 ปีที่แล้ว

    спасибо

  • @AbraKadabra000
    @AbraKadabra000 4 ปีที่แล้ว

    красиво шпарит.
    на двойной скорости послушал. всо чотко

  • @StalkerRaftik
    @StalkerRaftik 2 ปีที่แล้ว

    Усложнил все до невозможности. Не знаю насчёт остального, но это видео было максимально сложным для новичка

    • @user-su6gu3me1r
      @user-su6gu3me1r 2 ปีที่แล้ว

      я чувствую себя максимально тупым последние несколько уроков

  • @user-dk4ji5eb6g
    @user-dk4ji5eb6g 4 ปีที่แล้ว

    Спасибо большое за видео) Очень доступно и понятно!!!
    Владилен, вы не могли бы снять видео про pwa во vue-cli3? Или оно уже есть, а я не нашла на канале?

  • @null-lu8it
    @null-lu8it ปีที่แล้ว

    Любишь ты все темы усложнять

  • @kookaburru
    @kookaburru 4 ปีที่แล้ว

    async/await это синтаксический сахар на генератор/промис, где генератор используется для превращения асинхронного кода в синхронный, а промис для выполнения асинхронного кода. То есть тут суть в генераторе, а промис деталь реализации генератора. Промис можно заменить на простой обратный вызов (callback).

  • @alexgrinberg1888
    @alexgrinberg1888 3 ปีที่แล้ว

    Владилен! Спасибо за ваши уроки. Я часто смотрю ваши уроки на iPhone. Нельзя ли поменять черный бэкграунд на белый, чтобы лучше был виден код? Спасибо!

  • @spiteman
    @spiteman 3 ปีที่แล้ว

    попробовал заменить в своем микропроекте .then на async/await и получилось даже еще более громоздко, может чуть читается легче, так и мне никто не мешает .then переносить на новую строку.

  • @user-to8bv5yr5p
    @user-to8bv5yr5p 4 ปีที่แล้ว

    Видосы огонь, Владилен, спасибо за работу)) Но не въехал зачем нужна задержка в 2сек.

    • @user-qs8vf5dm3c
      @user-qs8vf5dm3c 4 ปีที่แล้ว

      Для наглядности. В реальных проектах никакие задержки не нужны.

  • @user-in3jd6cm2t
    @user-in3jd6cm2t 2 ปีที่แล้ว +1

    🤯👍

  • @yasenclassen
    @yasenclassen 3 ปีที่แล้ว +8

    10:15 зачем писать await repsonse.json() если мы уже ждем fetch который запишет результат в переменную response после того как отработает, по идее await для repsonse.json() уже не нужен, или я не прав? @Владилен Минин

    • @dreawmy2912
      @dreawmy2912 2 ปีที่แล้ว

      без .json() ты не получишь тело ответа

  • @user-gu5ir3zs4v
    @user-gu5ir3zs4v 5 ปีที่แล้ว

    Так же хорошая идея на счёт парсера на node js , на Ютубе нормальных видео нет вообще, а в статьях говорят только как спарсить в самой ноде а как это уже на свою html страницу вывести нет. Тут как раз и fetch будет нужен, потому что нужно будет как то делать запрос на сервер что бы получить эти данные

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว

      NodeJS на сервере, там не будет fetch
      Скорее какой нибудь request

    • @user-gu5ir3zs4v
      @user-gu5ir3zs4v 5 ปีที่แล้ว

      @@VladilenMinin ну если допустим есть парсер на ноде и он выводит текст только в терминале, то что бы его переместить себе в html нужно поднять сервер и сделать к нему запрос(тем же fetch) ,так ведь? Нода же не имеет доступ к дому, поэтому только так. И вот такого описания парсера с нуля и до момента вывода себе в html нету вообще нигде, ни в одном русском источнике

    • @user-qs8vf5dm3c
      @user-qs8vf5dm3c 4 ปีที่แล้ว

      @@user-gu5ir3zs4v Все, что вы спарсите, кроме картинок, надо закидывать в базу. А дальше все работает как обычный сайт.

  • @jimmayhem990
    @jimmayhem990 7 หลายเดือนก่อน

    Спасибо большое за отличное объяснение! Не совсем понял момент с
    .then(() => {
    return fetch(url)
    }
    .then(response => response.json())
    fetch() возвращает Promise, then() оборачивает все что в return в новый Promise. Получается, что результат then() - Promise? Как тогда последующий then() вызывает у этого объекта json() ?

  • @FillPower
    @FillPower 5 ปีที่แล้ว

    Set & Map Weak Map, примеры использования следующее пожалуйста)

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว

      Быть может отдельный плейлист по ES6?

    • @FillPower
      @FillPower 5 ปีที่แล้ว

      Владилен Минин, было круто, если сделали бы

  • @user-mx6ts8xi4m
    @user-mx6ts8xi4m 3 ปีที่แล้ว

    спас меня

  • @user-yx4ov2xx8s
    @user-yx4ov2xx8s 4 ปีที่แล้ว

    👍👍👍

  • @Briz231
    @Briz231 2 ปีที่แล้ว

    Малюсенький вопрос: я правильно понимаю, что работа всей страницы при наличии такого кода останавливается до того момента, пока не выполнится "виртуальный промис" в виде таймера delay? Или это просто отдельный поток где js выполняет для конкретной функции свой код и затем возвращает его? Ну, то есть, если мы присвоим переменной эту функцию, к ней можно будет обратиться только через 2 секунды, и всё это время скрипт будет недоступен?

  • @user-pq7dj1ny4h
    @user-pq7dj1ny4h 5 ปีที่แล้ว

    Спасибо, Владилен! Хорошо рассказываешь. Можешь сделать видео про Webassembly?У дотнэтчиков скоро выходит инструмент Blazor, как замена JS фреймворкам, да и в целом языку JS. Front - end они смогут писать на C#. Получится некий полноценный фулстэк из одного языка. Но насколько мне известно, им всё же придётся использовать JS для некоторых операций. Microsoft планирует в своих браузерах полностью заменить JS на webassembly (C#). Каково твоё мнение и что стоит ждать?

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว +1

      Пока я не очень знаком с этой темой, только слышал про нее
      На текущий момент хочу сосредоточиться на JS - уж больно много материала хочу осветить
      А дальше посмотрю, на что переходить

    • @user-pq7dj1ny4h
      @user-pq7dj1ny4h 5 ปีที่แล้ว

      @@VladilenMinin Тогда жду курсы или уроки про React Native и Electron.

  • @ZhanOmar
    @ZhanOmar ปีที่แล้ว

    Помню как мучался с созданием небольшого API на NodeJS с использованием пакетов MySQL, fs и http(s), где нужно было просто вернуть файл, перед этим найдя его в БД. Вот там меня и выбесил mysql пакет со своим коллбэком и необходимостью передавать в него request из пакета http, чтобы вернуть пользователю данные. Благо в пакете mysql2 был предусмотрен синхронный метод 😅

  • @kuzub4ik
    @kuzub4ik 4 ปีที่แล้ว

    а как это можно применить в цикле? К примеру при прохождении массива циклом, если данные подходят по условиям, нужно выполнить еще две функции которые делают fetch запросы и нужно чтобы была асинхронность, чтобы сперва выполнилась getFirstData() потом getSecondData() и цикл корректно отрабатывал

  • @rigoremplasticsinnovates5143
    @rigoremplasticsinnovates5143 2 ปีที่แล้ว

    Добрый день, подскажите как дальше работать с data ? Или только внутри промиса и больше никак не вывести data в глобальную зону видимости?

  • @kaelnlarien7623
    @kaelnlarien7623 3 หลายเดือนก่อน

    Самое главное, что смотря на async await может показаться, что мы только ждём код и всё. НО, как и then, await не блокирует код, а просто откладывает выполнение действующей функции (или call stack если смотреть глобальнее) и продолжит выполнять код дальше
    Такой код выведет 3 1 4 2. Если уже поставить await верхнего уровня перед вызовом функции, то уже будет 3 1 2 4, так как мы уже дожидаемся этой функции и по сути смысла в асинхронности тогда нет. Код внутри промиса выполняется синхронно, поэтому туда реально нужно ложить то, чего вы хотите подождать типа запроса или того же setTimeout
    ```JavaScript
    async function f() {
    console.log("1")
    let promise = new Promise((resolve, reject) => {
    setTimeout(() => resolve("готово!"), 1000)
    });
    let result = await promise; // будет ждать, пока промис не выполнится (*)
    console.log("2")
    alert(result); // "готово!"
    }
    console.log("3")
    f();
    console.log("4")
    ```

  • @evgeniyn1542
    @evgeniyn1542 5 ปีที่แล้ว

    Отличное видео, спасибо. Владилен, когда будут ваши авторские курсы на Udemy? :)

    • @NextgenSocialReptile
      @NextgenSocialReptile 5 ปีที่แล้ว +2

      Привет, в июле будет первый курс)

    • @evgeniyn1542
      @evgeniyn1542 5 ปีที่แล้ว

      @@NextgenSocialReptile Отлично! )

  • @user-pe8kt3ze1i
    @user-pe8kt3ze1i ปีที่แล้ว

    Подскажите, а зачем второй раз прописывать await? Там же вроде как уже синхронно можно response в json перевести

  • @Nikita-hr6ss
    @Nikita-hr6ss 4 ปีที่แล้ว +1

    А как быть когда надо делать fetch запросы в цикле? Условно в коде который описал ниже, там где console.log хочу ещё помимо синхронно выполнить fetch запрос. Или вообще можно как-то более правильно чисто async await-ами всё переписать?
    let count = 0;
    function printer()
    {
    return new Promise(resolve => {
    setTimeout(()=>{
    resolve(console.log('+2 sec...'))
    }, 2000)
    });
    }
    (async _ => {
    console.log('Start')
    while (count

  • @user-py7nm1mu2b
    @user-py7nm1mu2b 5 ปีที่แล้ว +5

    Map, WeakMap, Set, WeakSet :-) а то их почему то редко используют в практике

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว +7

      Слушай, ну это уже к ES6 относится
      Много людей почему-то спрашивают. Может плейлист сделать?

  • @DanReksar
    @DanReksar 5 ปีที่แล้ว

    Спасибо) т.е. предпочтительнее пользоваться async / await, чем промисами напрямую. Или есть ситуации, когда async / await не получится использовать?

    • @VladilenMinin
      @VladilenMinin  5 ปีที่แล้ว +2

      Я бы почти всегда их использовал, редко когда нужны именно промисы
      Но стоит помнить, что еще не все бразуеры нативно поддерживают подобный синтаксис и лучше пропускать его через babel

  • @shaxanematov8516
    @shaxanematov8516 4 ปีที่แล้ว +1

    fetchAsyncTodos().then(console.log).catch(console.log) можно было и так писать вместо try, catch ведь эта функция всегда возвращает промис

  • @vasil-vasil
    @vasil-vasil 2 ปีที่แล้ว

    Получаю масив ссылок на изображения. Нужно их слепить в одно. Нужно дождаться загрузку каждого склеить (делаю это через canvas). Обьект изображения имеет евент onload. Как мне сделать. Как наложить изображения попорядку когда .onload у промисе не работает!?

  • @user-he9ut9ly9j
    @user-he9ut9ly9j 4 ปีที่แล้ว

    Было бы оч круто освятить ещё такие темы: деструктуризация, rest, spread, каррирование, метод flat у объектов, мемоизация, полиморфы/полифиллы, monkey patching... Да много ещё чего вспомнить можно. Просто это часто на собесах спрашивают, хотя на практике многое из этого практически не используется. Но для понимания каверзи знать стоит. Впрочем, автору виднее

    • @VladilenMinin
      @VladilenMinin  4 ปีที่แล้ว +1

      Так на канале почти все вещи эти освещены в других роликах

    • @user-he9ut9ly9j
      @user-he9ut9ly9j 4 ปีที่แล้ว

      @@VladilenMinin а, тогда пардон) я недавно на вашем канале. Планирую пересмотреть много чего тут) p.s. смотрю на юдеми ваши курсы многие

    • @VladilenMinin
      @VladilenMinin  4 ปีที่แล้ว +1

      Вливайся и добро пожаловать)

  • @alexandrskuratovich1394
    @alexandrskuratovich1394 2 ปีที่แล้ว +3

    А почему стоит await на response.json() , это ведь уже синхронная операция? И можно ли делать return в async методах?

    • @lidijajezova2025
      @lidijajezova2025 2 ปีที่แล้ว

      Метод json() возвращает промис.

  • @spiteman
    @spiteman 3 ปีที่แล้ว

    Пишу из 2021, вроде посмотрел внимательно урок по Promise и первый пример функции меня "убил наповал". Полез разбираться, что чего и как и в итоге, что получилось, для тех кто так же не понял как я:
    const delay = (ms) => new Promise((r) => setTimeout(r, ms));
    Во первых это короче и даже понятнее. Итак что у нас происходит, пишу как все еще ученик:
    присваиваем переменной ссылку на безымянную стрелочную функцию с параметром ms
    она в свою очередь возвращает Promise, который возвращает по исполнении функцию setTimeout через ms миллисекунд.