Ob es sich um ein ES6-Versprechen oder ein Bluebird-Versprechen, ein Q-Versprechen usw. handelt.
Wie teste ich, ob ein bestimmtes Objekt ein Versprechen ist?
.then
Methode verfügbar macht, die kein Versprechen ist, sich nicht wie ein Versprechen verhält und nicht die Absicht hatte, wie ein Versprechen verwendet zu werden. Überprüfen auf eine .then
Methode sagt Ihnen , nur , dass das , wenn das Objekt nicht eine hat .then
Methode, dann sind Sie nicht haben ein Versprechen. Die inverse - , dass die Existenz eines .then
Verfahrens bedeutet , dass Sie tun , ein Versprechen haben - ist nicht unbedingt wahr.
.then
Methode gibt. Ja, das kann zu Fehlalarmen führen, aber es wird davon ausgegangen, dass sich alle Versprechen-Bibliotheken darauf verlassen (denn darauf können sie sich nur verlassen). Die einzige Alternative, soweit ich sehen kann, besteht darin, den Vorschlag von Benjamin Gruenbaum anzunehmen und ihn durch die Versprechens-Testsuite zu führen. Für den tatsächlichen Produktionscode ist dies jedoch nicht praktikabel.
.then
Methode suchen, aber das würde Ihnen nicht sagen, dass das, was Sie haben, definitiv ein Versprechen ist. Alles, was Sie an diesem Punkt wissen würden, ist, dass Sie etwas haben, das eine.then
Methode enthüllt , wie ein Versprechen.