javascript - 为什么我的 Promise 定义会被执行?

标签 javascript constructor promise

我对 Promises 很陌生,想知道为什么我的 Promise 定义在我没有调用 .then() 或 resolve 的情况下得到执行。

var promise = new Promise(function (resolve, reject) {
     console.log("Starting loader");
     resolve();
});

如果您运行示例并查看控制台,您将看到“正在启动加载器”消息。

https://jsfiddle.net/npqgpcud/

最佳答案

这就是 promise 的定义方式。他们立即运行他们的执行者功能。它在规范中:Promise(executor) ,第 9 步。

这是 revealing constructor pattern 的一个实例;阅读可能有助于您理解的内容。

关于javascript - 为什么我的 Promise 定义会被执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31486064/

相关文章:

javascript - 使用 jQuery 填充子属性

javascript - SonarQube 无法解析带有 JSP 文件的内联 JavaScript

Javascript 原型(prototype)继承 : problem when parent and child receive same object as argument?

c++ - 对派生类 C++ 使用不同的基构造函数

c++ - 构造函数和析构函数必须是虚的?

javascript - 遍历 promise

javascript - 切换功能使所有其他 div 消失

javascript - 从 promise 中获取号码

javascript - 在给定场景中实现 promise 的最佳方式是什么?

javascript - 获取按钮的背景图像并更改它