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/promise/race/index.html | 177 --------------------- 1 file changed, 177 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/promise/race/index.html (limited to 'files/uk/web/javascript/reference/global_objects/promise/race') diff --git a/files/uk/web/javascript/reference/global_objects/promise/race/index.html b/files/uk/web/javascript/reference/global_objects/promise/race/index.html deleted file mode 100644 index c810db2cc0..0000000000 --- a/files/uk/web/javascript/reference/global_objects/promise/race/index.html +++ /dev/null @@ -1,177 +0,0 @@ ---- -title: Promise.race() -slug: Web/JavaScript/Reference/Global_Objects/Promise/race -tags: - - ECMAScript 2015 - - JavaScript - - Promise - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/Promise/race ---- -
{{JSRef}}
- -

Метод Promise.race() повертає проміс, який виконується чи відхиляється, як тільки один з промісів ітерабельного об'єкта буде виконаний чи відхилений, зі значеням або причиною з цього проміса.

- -
{{EmbedInteractiveExample("pages/js/promise-race.html")}}
- - - -

Синтаксис

- -
Promise.race(iterable);
- -

Параметри

- -
-
iterable
-
Ітерабельний об'єкт, наприклад, {{jsxref("Array")}}. Дивіться ітерабельний об'єкт.
-
- -

Значення, що повертається

- -

Об'єкт {{jsxref("Promise")}} у стані очікування, який асинхронно видає значення першого проміса з наданого ітерабельного об'єкта, що виконується або відхиляється.

- -

Опис

- -

Функція race повертає об'єкт Promise, який встановлюється таким самим чином (і отримує таке ж значення), як і перший встановлений проміс ітерабельного об'єкта, переданого як аргумент.

- -

Якщо передано пустий ітерабельний об'єкт, повернений проміс буде вічно перебувати у стані очікування.

- -

Якщо ітерабельний об'єкт містить одне або більше значень, що не є промісами, та/або вже встановлений проміс, тоді Promise.race буде вирішено з першим таким значенням, знайденим в ітерабельному об'єкті.

- -

Приклади

- -

Асинхронність Promise.race

- -

Цей приклад демострує асинхронність функції Promise.race:

- -
// ми передаємо в якості аргументу масив вже вирішених промісів,
-// щоб запустити Promise.race якомога швидше
-var resolvedPromisesArray = [Promise.resolve(33), Promise.resolve(44)];
-
-var p = Promise.race(resolvedPromisesArray);
-// негайно виводимо значення p
-console.log(p);
-
-// використовуючи setTimeout, ми можемо виконати код, коли стек стане порожнім
-setTimeout(function(){
-    console.log('тепер стек порожній');
-    console.log(p);
-});
-
-// порядок виведення:
-// Promise { <state>: "pending" }
-// тепер стек порожній
-// Promise { <state>: "fulfilled", <value>: 33 }
- -

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

- -
var foreverPendingPromise = Promise.race([]);
-console.log(foreverPendingPromise);
-setTimeout(function(){
-    console.log('тепер стек порожній');
-    console.log(foreverPendingPromise);
-});
-
-// порядок виведення:
-// Promise { <state>: "pending" }
-// тепер стек порожній
-// Promise { <state>: "pending" }
-
- -

Якщо ітерабельний об'єкт містить одне або більше значень, що не є промісами, та/або вже встановлені проміси, тоді Promise.race  буде вирішено з першим таким значенням, знайденим у масиві:

- -
var foreverPendingPromise = Promise.race([]);
-var alreadyResolvedProm = Promise.resolve(666);
-
-var arr = [foreverPendingPromise, alreadyResolvedProm, "не проміс"];
-var arr2 = [foreverPendingPromise, "не проміс", Promise.resolve(666)];
-var p = Promise.race(arr);
-var p2 = Promise.race(arr2);
-
-console.log(p);
-console.log(p2);
-setTimeout(function(){
-    console.log('тепер стек порожній');
-    console.log(p);
-    console.log(p2);
-});
-
-// порядок виведення:
-// Promise { <state>: "pending" }
-// Promise { <state>: "pending" }
-// тепер стек порожній
-// Promise { <state>: "fulfilled", <value>: 666 }
-// Promise { <state>: "fulfilled", <value>: "не проміс" }
-
- -

Використання Promise.race – приклади з setTimeout

- -
var p1 = new Promise(function(resolve, reject) {
-    setTimeout(() => resolve('один'), 500);
-});
-var p2 = new Promise(function(resolve, reject) {
-    setTimeout(() => resolve('два'), 100);
-});
-
-Promise.race([p1, p2])
-.then(function(value) {
-  console.log(value); // "два"
-  // Обидва вирішуються, але p2 швидший
-});
-
-var p3 = new Promise(function(resolve, reject) {
-    setTimeout(() => resolve('три'), 100);
-});
-var p4 = new Promise(function(resolve, reject) {
-    setTimeout(() => reject(new Error('чотири')), 500);
-});
-
-Promise.race([p3, p4])
-.then(function(value) {
-  console.log(value); // "три"
-  // p3 швидший, тому він виконується
-}, function(reason) {
-  // Не викликається
-});
-
-var p5 = new Promise(function(resolve, reject) {
-    setTimeout(() => resolve("п'ять"), 500);
-});
-var p6 = new Promise(function(resolve, reject) {
-    setTimeout(() => reject(new Error('шість')), 100);
-});
-
-Promise.race([p5, p6])
-.then(function(value) {
-  // Не викликається
-}, function(reason) {
-  console.log(reason); // "шість"
-  // p6 швидший, тому він відхиляється
-});
- -

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

- - - - - - - - - - -
Специфікація
{{SpecName('ESDraft', '#sec-promise.race', 'Promise.race')}}
- -

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

- - - -

{{Compat("javascript.builtins.Promise.race")}}

- -

Див. також

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