23

可能重复:
Javascript 中的 Deferred、Promise 和 Future 有什么区别?

有人能指出回调和承诺之间有什么区别吗?什么时候应该使用承诺等?

还将感谢有关如何创建和使用承诺的链接。

4

1 回答 1

44

Promise 提供了一种更简洁明了的方式来表示 javascript 中的顺序异步操作。它们实际上是实现与回调相同效果的不同语法。优点是增加了可读性。像这样的东西

aAsync()
  .then(bAsync)
  .then(cAsync)
  .done(finish);

比将这些单独的函数中的每一个作为回调传递的等价物更具可读性,例如

Async(function(){
    return bAsync(function(){
        return cAsync(function(){
            finish()
        })
    })
});
于 2013-01-09T19:31:05.273 回答