Guest User

Untitled

a guest
Jul 22nd, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. function makeAlways(promise) {
  2. var always = [];
  3.  
  4. function doAlways(val) {
  5. var a,
  6. i = 0;
  7. while(a = always[i++]) { a(val); }
  8. }
  9.  
  10. if(!promise.always) {
  11. promise.always = function(alwaysFunc) {
  12. always.push(alwaysFunc);
  13. return this;
  14. }
  15.  
  16. var origResolve = promise.resolve;
  17. promise.resolve = function resolveThenAlways(val) {
  18. origResolve.call(promise, val);
  19. doAlways(val);
  20. }
  21.  
  22. var origReject = promise.reject;
  23. promise.reject = function rejectThenAlways(err) {
  24. origReject.call(promise, err);
  25. doAlways(err);
  26. }
  27. }
  28. }
Add Comment
Please, Sign In to add comment