Так что мне было интересно, что происходит с ответом, и отвергаю объект обещания.Я читал эту документацию И есть вещи, которые мне не совсем понятны.
Например, что это за объект resolve()
.
Я видел, что эта вещь может быть внутри строки, а затем запускается resolve()
?Что происходит и какой смысл в этом
var promise1 = new Promise(function(resolve, reject) {
setTimeout(function() {
resolve('foo');
}, 300);
});
Сначала я думал, что функция / объект разрешения запускается всякий раз, когда функция обратного вызова возвращает значение, а затем может перейти к .then()
Так что я какое-то время играл с этой штукой, и оказалось, что моя теория с решимостью по возвращению работает в 50% случаев, остальные 50% разрушают мой разум.
Также отказобъект / функция, как запустить его, если, скажем, результат функции равен 0, но это должно быть 1, чтобы я мог продолжить?
var promise1 = new Promise(function(resolve, reject) {
if(someFunction() === 0)
{
reject();
} else {
resolve()
}
});
Этот код работает только в том случае, если внутри моего someFunction()
у меня нет асинхронных функций, и, если он у меня есть, он всегда возвращает неопределенное значение.
Так что доэта точка суть понятия обещания и его использования мне совершенно неясна.