From 95aca4b4d8fa62815d4bd412fff1a364f842814a Mon Sep 17 00:00:00 2001 From: Ryan Johnson Date: Thu, 29 Apr 2021 16:16:42 -0700 Subject: remove retired locales (#699) --- .../global_objects/asyncfunction/index.html | 128 --------------------- 1 file changed, 128 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/asyncfunction/index.html (limited to 'files/uk/web/javascript/reference/global_objects/asyncfunction') diff --git a/files/uk/web/javascript/reference/global_objects/asyncfunction/index.html b/files/uk/web/javascript/reference/global_objects/asyncfunction/index.html deleted file mode 100644 index d07be9a438..0000000000 --- a/files/uk/web/javascript/reference/global_objects/asyncfunction/index.html +++ /dev/null @@ -1,128 +0,0 @@ ---- -title: AsyncFunction -slug: Web/JavaScript/Reference/Global_Objects/AsyncFunction -tags: - - JavaScript - - Довідка - - Конструктор -translation_of: Web/JavaScript/Reference/Global_Objects/AsyncFunction ---- -
{{JSRef}}
- -

Конструктор AsyncFunction створює новий об'єкт {{jsxref("Statements/async_function", "асинхронної функції")}}. У JavaScript кожна асинхронна функція насправді є об'єктом AsyncFunction.

- -

Зауважте, що AsyncFunction не є глобальним об'єктом. Його можна отримати за допомогою наступного коду:

- -
Object.getPrototypeOf(async function(){}).constructor
-
- -

Синтаксис

- -
new AsyncFunction([arg1[, arg2[, ...argN]],] functionBody)
- -

Параметри

- -
-
arg1, arg2, ... argN
-
Імена, що використовуватиме функція як формальні імена аргументів. Кожне має бути рядком, що відповідає коректному ідентифікатору JavaScript, або списком таких рядків, розділених комою; наприклад, "x", "theValue" або "a,b".
-
functionBody
-
Рядок, що містить інструкції JavaScript, які складають визначення функції.
-
- -

Опис

- -

Об'єкти {{jsxref("Statements/async_function", "асинхронних функцій")}}, створені конструктором AsyncFunction, розбираються, коли створюється функція. Це менш ефективно, ніж оголосити асинхронну функцію через {{jsxref("Statements/async_function", "async function")}} та викликати її у вашому коді, тому що такі функції розбираються з рештою коду.

- -

Усі аргументи, передані у функцію, сприймаються як імена ідентифікаторів параметрів функції, яка має бути створена, у тому порядку, в якому вони передані.

- -
-

Заувага: {{jsxref("Statements/async_function", "асинхронні функції")}}, створені конструктором AsyncFunction, не утворюють замикань з контекстом свого створення; вони завжди створюються у глобальній області видимості.

- -

Під час виконання вони матимуть доступ тільки до власних локальних змінних та до глобальних, але не до змінних області видимості, в якій був викликаний конструктор AsyncFunction.

- -

Це відрізняється від використання {{jsxref("Global_Objects/eval", "eval")}} з кодом виразу асинхронної функції.

-
- -

Використання конструктора AsyncFunction в якості функції (без оператора new) має такий самий ефект, як і виклик його в якості конструктора.

- -

Властивості

- -
-
AsyncFunction.length
-
Властивість length конструктора AsyncFunction (її значення дорівнює 1).
-
{{jsxref("AsyncFunction.prototype")}}
-
Дозволяє додавати властивості до усіх об'єктів асинхронних функцій.
-
- -

Прототип AsyncFunction

- -

Властивості

- -
{{page('/uk/docs/Web/JavaScript/Reference/Global_Objects/AsyncFunction/prototype', 'Властивості')}}
- -

Екземпляри AsyncFunction

- -

Екземпляри AsyncFunction успадковують методи та властивості від {{jsxref("AsyncFunction.prototype")}}.

- -

Як в усіх конструкторах, ви можете змінювати об'єкт конструктора prototype, щоб вносити зміни до усіх екземплярів AsyncFunction.

- -

Приклади

- -

Створення асинхронної функції конструктором AsyncFunction

- -
function resolveAfter2Seconds(x) {
-  return new Promise(resolve => {
-    setTimeout(() => {
-      resolve(x);
-    }, 2000);
-  });
-}
-
-let AsyncFunction = Object.getPrototypeOf(async function(){}).constructor
-
-let a = new AsyncFunction('a',
-                          'b',
-                          'return await resolveAfter2Seconds(a) + await resolveAfter2Seconds(b);');
-
-a(10, 20).then(v => {
-  console.log(v); // виводить 30 через 4 секунди
-});
-
- -

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

- - - - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
{{SpecName('ESDraft', '#sec-async-function-objects', 'AsyncFunction object')}}{{Spec2('ESDraft')}}Початкове визначення у ES2017.
- -

Сумісність з веб-переглядачами

- -
- - -

{{Compat("javascript.builtins.AsyncFunction")}}

-
- -

Див. також

- - -- cgit v1.2.3-54-g00ecf