使用本机(ES6)JavaScript承诺在承诺或常规对象上“等待”

时间:2016-06-15 06:45:07

标签: javascript promise ecmascript-6 terminology

几年前,我使用jQuery或Q玩过几次承诺。我现在很生疏,想学习并使用新的原生ES6承诺。

我似乎记得一个简洁的概念,你可以“等待”一些东西而不关心它是一个普通的对象还是一个承诺。如果它是一个promise,它会在异步完成时调用回调,如果它是其他任何东西,则立即调用回调 - 也许是下一个tick。

但我不记得这是怎么做到的。我不确定它是否有名称,所以它对谷歌来说很难。我不确定它是否是所有JS promise实现的标准功能,或者它只是jQuery所拥有的东西。

这叫什么?我还能用本机承诺做到这一点吗?我在哪里可以阅读它?

1 个答案:

答案 0 :(得分:2)

jQuery的$.when()和ES6的Promise.all()都展示了您所引用的行为。提供承诺并且函数等待承诺解决,但对于任何其他值,它立即返回。