Зачем нужно асинхронное программирование

JavaScript - это однопоточный язык, и трудоемкие действия, такие как сетевые запросы, чтение и запись файлов, должны выполняться асинхронно, иначе интерфейс застрянет.

Проблемы Ада.

Многоуровневый встроенный код обратного вызова трудно поддерживать.

Обещание 3.

  • pending: Продолжается
  • fulfilled: Успех
  • rejected: Неудача
fetch('/api/user').then(res => res.json()).then(data => console.log(data)).catch(err => console.error(err));

async / await Синтаксис сахара

ES2017 вводится, чтобы асинхронный код выглядел как синхронизация:

async function loadUser() {

Параллельное выполнение

Несколько независимых запросов выполняются параллельно с Promise.all.

Частые ловушки

  • Забывание Await приводит к получению обещанного объекта, а не результата
  • Неправильное использование Await в цикле приводит к последовательному выполнению
  • Пропуск try / catch приводит к неуловимым аномалиям

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