看看这段 jQuery 代码:
var promise = new Deferred(),
some;
some = function(promise) {
// do cool things
promise.resolve();
};
promise.then(/* callback cool things */);
// init everything
some(promise);
我不确定这种方法的架构正确性,但我长期以来一直在使用它,这对我很方便。
在原生JavaScript中,我无法使用这种方法。构造函数new Promise()
需要一个回调参数,因此我无法将Promise
实例作为参数传递。
所以我的问题是:如何预定义JavaScript本机promise,将其作为参数传递给函数并解决它?