AsyncFunction

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2017.

We’d love to hear your thoughts on the next set of proposals for the JavaScript language. You can find a description of the proposals here.
Please take two minutes to fill out our short survey.

Объект AsyncFunction предоставляет методы для асинхронных функций. В JavaScript каждая асинхронная функция фактически является объектом AsyncFunction.

Обратите внимание, что AsyncFunction не является глобальным объектом. Его можно получить с помощью следующего кода:

js
const AsyncFunction = async function () {}.constructor;

AsyncFunction является подклассом Function.

Конструктор

AsyncFunction()

Создаёт новый объект AsyncFunction.

Свойства экземпляра

Также наследует свойства своего родителя Function.

Эти свойства определены в AsyncFunction.prototype и есть у всех экземпляров AsyncFunction.

AsyncFunction.prototype.constructor

Функция-конструктор, создающая экземпляр объекта. Для экземпляров AsyncFunction начальным значением является конструктор AsyncFunction.

AsyncFunction.prototype[@@toStringTag]

Начальным значением свойства @@toStringTag является строка "AsyncFunction". Это свойство используется в Object.prototype.toString().

Примечание: Экземпляры AsyncFunction не имею свойства prototype.

Методы экземпляра

Наследует методы своего родителя Function.

Спецификации

Specification
ECMAScript® 2026 Language Specification
# sec-async-function-objects

Совместимость с браузерами

Смотрите также