Вот пример функции 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. В противном случае обещание будет отклонено с ошибкой.
Вот несколько дополнительных методов, которые можно использовать с обещаниями:
Promise.all(): объединяет несколько обещаний в одно, которое выполняется, когда все входные обещания выполняются.Promise.race(): возвращает новое обещание, которое обрабатывается на основе результата первого выполненного обещания (либо разрешается, либо отклоняется).Promise.resolve(): возвращает новый разрешенный объект Promise с заданным значением.Promise.reject(): возвращает новый отклоненный объект Promise с указанной причиной.