Пример JavaScript: создание функции, возвращающей обещание

Вот пример функции JavaScript, которая возвращает обещание:

function examplePromise() {
  return new Promise((resolve, reject) => {
    // Perform some asynchronous operation
    // For example, make an HTTP request
    fetch('https://api.example.com/data')
      .then(response => {
        if (response.ok) {
          resolve(response.json());
        } else {
          reject(new Error('Request failed'));
        }
      })
      .catch(error => {
        reject(error);
      });
  });
}

В этом примере функция examplePromiseсоздает и возвращает новое обещание. Внутри функции-исполнителя Promise вы можете выполнять асинхронные операции, такие как создание HTTP-запроса с помощью функции fetch. Если запрос успешен (response.okимеет значение true), обещание разрешается с использованием проанализированных данных JSON. В противном случае обещание будет отклонено с ошибкой.

Вот несколько дополнительных методов, которые можно использовать с обещаниями:

  1. Promise.all(): объединяет несколько обещаний в одно, которое выполняется, когда все входные обещания выполняются.
  2. Promise.race(): возвращает новое обещание, которое обрабатывается на основе результата первого выполненного обещания (либо разрешается, либо отклоняется).
  3. Promise.resolve(): возвращает новый разрешенный объект Promise с заданным значением.
  4. Promise.reject(): возвращает новый отклоненный объект Promise с указанной причиной.