Проверяет понимание top-level await в модулях ES и его влияния на асинхронную инициализацию кода.
Top-level await — это возможность писать await прямо в теле ES-модуля, вне какой-либо async-функции. Раньше для этого приходилось оборачивать код в (async () => { ... })() или использовать .then(). Теперь модуль сам может быть асинхронным: пока его await не завершится, импортирующий модуль не начнёт выполняться.
Когда модуль содержит top-level await, движок помечает его как асинхронный. Все модули, которые его импортируют, ждут завершения. Это создаёт естественный порядок инициализации без ручной синхронизации.
// config.mjs
const res = await fetch('/api/config');
export const config = await res.json();
// app.mjs
import { config } from './config.mjs';
console.log(config); // уже загруженИтог: применяйте top-level await для чистой асинхронной инициализации модулей, но следите за временем ожидания и циклическими импортами.
Уровень
Рейтинг:
4
Сложность:
6
Навыки
JavaScript
Node.js
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию