Javascript 何时使用回调和承诺?

Javascript 何时使用回调和承诺?,javascript,node.js,callback,es6-promise,Javascript,Node.js,Callback,Es6 Promise,实际上,我对NodeJs和JS都是新手。我在任何地方都使用回调编写了我的第一个应用程序,我达到了无法再处理嵌套回调数量的状态(回调地狱)。所以我寻找解决方案,我读到承诺是解决这个问题的最好方法之一。顺便说一句,对于那些感兴趣的人,这里有一个很好的解释: 因此,我使用Promises对最关键的函数进行了重构,效果非常好。然而,我不知道是否应该重构所有的应用程序。JS开发者现在是怎么做的?他们是在任何地方都使用承诺,还是大部分时间都在使用回调,只有在嵌套回调太多的情况下才使用承诺?是否有最佳实践?您

实际上,我对NodeJs和JS都是新手。我在任何地方都使用回调编写了我的第一个应用程序,我达到了无法再处理嵌套回调数量的状态(回调地狱)。所以我寻找解决方案,我读到承诺是解决这个问题的最好方法之一。顺便说一句,对于那些感兴趣的人,这里有一个很好的解释:


因此,我使用Promises对最关键的函数进行了重构,效果非常好。然而,我不知道是否应该重构所有的应用程序。JS开发者现在是怎么做的?他们是在任何地方都使用承诺,还是大部分时间都在使用回调,只有在嵌套回调太多的情况下才使用承诺?是否有最佳实践?

您应该保持API的一致性。在这里使用回调,但在那里使用承诺,这会使组合调用(例如承诺链)变得困难,并让您猜测每次应该使用哪种约定。当您使用时,您的文章还提到了
async/await
,这更易于维护和阅读。使用回调、Promise、Generator(/coroutines),async/await取决于个人偏好。Async/await最近从Node.js v7.6.0(无标志)开始提供,许多人对它的易用性感到兴奋。