Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.66 KB | None | 0 0
  1. var myPromise = (i) => {
  2.  
  3. let time = Math.floor(Math.random() * 5000) + 5000;
  4.  
  5. console.log(`new promise ${i} for ${time}ms`)
  6.  
  7. return new Promise((resolve, reject) => {
  8.  
  9. let random = Math.floor(Math.random() * 2);
  10.  
  11. setTimeout(() => {
  12. if (random == 1)
  13. resolve(`Yeah ${i}!`)
  14. else
  15. reject(new Error(`Whoa ${i}!`))
  16. }, time);
  17.  
  18. })
  19. .then((ok) => {
  20. console.info(ok);
  21. return myPromise(i + 1);
  22. })
  23. .catch((err) => {
  24. console.error(err.message);
  25. return myPromise(i + 1);
  26. });
  27. }
  28.  
  29. p = myPromise(1);
  30.  
  31. setInterval(() => console.log('-- state:', p), 500);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement