Q承诺:在相同的顺序调用回调函数作为注册?(Q promise: are callbacks inv

2019-09-03 05:03发布

我使用的Q承诺库。 我的代码依赖于单个承诺回调中,因为他们注册了相同的顺序执行的事实。

http://jsfiddle.net/HgYtK/1/

var deferred = Q.defer();
var promise = deferred.promise;

['first', 'second', 'third'].forEach(function (position) {
  promise.then(function () {
    alert(position);
  });
});

deferred.resolve();

这不产生正确的结果,但我不知道这是否是规范还是一个令人高兴的巧合,可能打破线的一部分。

Answer 1:

从承诺/ A +规格

2.2.6.1

如果/当promise被兑现,各onFulfilled回调必须在其发起的顺序执行调用then



文章来源: Q promise: are callbacks invoked in the same order as registered?