Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var myPromise = (i) => {
- let time = Math.floor(Math.random() * 5000) + 5000;
- console.log(`new promise ${i} for ${time}ms`)
- return new Promise((resolve, reject) => {
- let random = Math.floor(Math.random() * 2);
- setTimeout(() => {
- if (random == 1)
- resolve(`Yeah ${i}!`)
- else
- reject(new Error(`Whoa ${i}!`))
- }, time);
- })
- .then((ok) => {
- console.info(ok);
- return myPromise(i + 1);
- })
- .catch((err) => {
- console.error(err.message);
- return myPromise(i + 1);
- });
- }
- p = myPromise(1);
- setInterval(() => console.log('-- state:', p), 500);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement