JavaScript метод Promise.reject()
JavaScript PromiseОпределение и применение
JavaScript метод reject() объекта Promise возвращает объект Promise, который был отклонен по указанной причине (изменяет состояние объекта Promise на rejected - выполнение отклонено).
Поддержка браузерами
Метод | Chrome | Firefox | Opera | Safari | IExplorer | Edge |
---|---|---|---|---|---|---|
.reject() | 32.0 | 29.0 | 19.0 | 8.0 | Нет | Да |
JavaScript синтаксис:
Promise.reject(reason); reason - экземпляр объекта Error (рекомендовано)
Спецификация
ECMAScript 2015 (6th Edition, ECMA-262)Значения параметров
Параметр | Описание |
---|---|
reason | Причина, по которой обещание было отвергнуто. Для целей отладки и выборочного перехвата ошибок полезно передвать значение, которое соответствует экземпляру ошибки (Error). |
Пример использования
const promise = Promise.resolve("Успешно"); // обещание успешно выполнено с заданным значением const promise2 = Promise.reject(new Error("Отклонено")); // обещание отклонено с заданным значением promise.then(function(value) { // Если успешно выполнен (fulfilled) console.log(value); }, function (reason) { // Если завершился ошибкой (rejected) console.log(reason); }); // Успешно // использование стрелочной функции promise2.then( val => console.log(elem), // обработчик для успешного выполнения reason => console.log(reason.message)); // обработчик при отклоненном выполнении // Отклонено
В этом примере мы инициализировали две переменные, которые содержат объект Promise, в первом случае с использованием метода resolve() обещание было успешно выполнено с заданным значением, а во втором с использованием метода reject() отклонено.
С использованием метода then() мы добавили обработчики, вызываемые когда объект Promise имеет состояние fulfilled (успешное выполнение), или rejected (выполнение отклонено). В первом случае будет срабатывать обработчик для успешного выполнения, а во втором обработчик при отклоненном выполнении.
JavaScript Promise