intermediate

Задачи на async JavaScript

Рассуждайте о promise coordination, concurrency limits, cancellation, retries и output order.

Async JavaScript задачи на интервью комбинируют semantics языка с coordination: запускать promises sequentially, ограничивать concurrency, retry with backoff, cancel stale work или предсказывать event loop output. Решение должно сохранять ordering requirements и избегать unbounded parallel work.

Компромисс: сравните время, память и сложность реализации до выбора структуры или паттерна.

На интервью: Интервьюеры ожидают понимание разницы между созданием promises, await и scheduling callbacks в microtasks или tasks.

Типовые ошибки: Array.map с async callbacks запускает всю работу сразу. Promise.all fail-fast. Cancellation требует AbortController или cooperative checks; ignore stale results не равен stop work.

Чеклист:

  • Разделяйте creation и awaiting.
  • Осознанно ограничивайте concurrency.
  • Определите rejection policy.
  • Задайте cancellation behavior.