> В чем разница между async function и обычной функцией в JavaScript? (JavaScript)
Уровень: senior · Роль: frontend · Категория: Технические вопросы
Компании: EPAM
Стек: JavaScript
> Пример ответа
Основное различие в том, что async function всегда возвращает Promise, даже если явно вернуть примитив. Обычная функция возвращает то, что указано в return, или undefined.
JAVASCRIPT// Обычная функцияfunction regular() {return 42;}console.log(regular()); // 42// async функцияasync function asyncFunc() {return 42;}console.log(asyncFunc()); // Promise {<fulfilled>: 42}
Внутри async функции можно использовать await, который приостанавливает выполнение до разрешения Promise. В обычной функции await вызовет синтаксическую ошибку.
JAVASCRIPTasync function fetchData() {const response = await fetch('/api'); // работаетreturn response.json();}function regularFetch() {const response = await fetch('/api'); // SyntaxError}
Также async функции обрабатывают исключения через отклонённый Promise, а обычные - через throw в синхронном коде.
> Похожие задачи по frontend
Как отправить состояние при закрытии страницы браузера?
Как создаются переменные в JavaScript?
Как управлять очередностью загрузки и выполнения скриптов в JavaScript
Как реализуется инкапсуляция в JavaScript
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью