#javascript
Вопрос:
Почему результат обещания все еще undefined
остается ? В учебнике сказано, что так и будет error
. Это проблема с отображением Chrome или что-то еще, чего я до сих пор не понимаю?
Комментарии:
1. У
promise
этого есть результатError
. Тотpromise.then(…)
еще нет.
Ответ №1:
Вы ничего не возвращаете из обработчика ошибок ( alert
возвращает undefined
), поэтому результат обещания, связанный с ошибкой, таков undefined
. Если вы вернете что-то из обработчика ошибок, вы увидите это в результате.
new Promise((resolve, reject) => {
setTimeout(() => {
reject('err');
}, 1000);
})
Это не хромированная вещь — так она будет работать в любой среде. (Чтобы получить доступ к результату ошибки, вызовите .catch
Обещание и используйте первый аргумент)
Комментарии:
1. Я пробежал учебник и понял, что результат обещания вернет значение отклонения. Спасибо за ваше просвещение.