Ответ 1
Это просто определение promises. Они запускают свою функцию-исполнитель немедленно. Это в спецификации: Promise (исполнитель), шаг 10.
Это экземпляр выявления шаблона конструктора; которые могут помочь вам понять.
Я совершенно новый с Promises и хочу знать, почему это так, что мое определение Promise выполняется без моего вызова .then()
или разрешения на нем.
var promise = new Promise(function (resolve, reject) {
console.log("Starting loader");
resolve();
});
Если вы запустите образец и увидите консоль, вы увидите сообщение "Запуск загрузчика".
https://jsfiddle.net/npqgpcud/
Это просто определение promises. Они запускают свою функцию-исполнитель немедленно. Это в спецификации: Promise (исполнитель), шаг 10.
Это экземпляр выявления шаблона конструктора; которые могут помочь вам понять.
Это происходит потому, что обещание будет выполняться немедленно и синхронно.
.then()
добавить функции, которые будут выполняться, когда обетование будет выполнено (аргумент resolve
) или отклонено (аргумент reject
).
с информацией из комментариев @Kirill Slatin