你有没有想过,你写出来的代码可能你自己都无法预测,而这常常出现在有另外的 “黑箱子”(第三方库或自己曾封装过的代码)参与进来的情况。当然,如果这个“黑箱子” 是同步运行的还好,毕竟只要 “黑箱子” 内部的逻辑正确,那么就不会有什么太大问题。可是,如果 “黑箱子” 内部有异步的代码,这时候就会有麻烦了,因为你可能不会知道 “黑箱子” 内部是如何对异步进行处理的,即便知道,“黑箱子”内部对回调函数的处理也会让你不得不遵从,因为你没法控制 “黑箱子” 对回调函数的处理。当然,以上的情况仅仅是发生在单纯地使用传入回调函数的方式,而不是 Promise……