Created
September 16, 2015 18:49
-
-
Save FlandreDaisuki/8037f8d7d85dd2b14a20 to your computer and use it in GitHub Desktop.
Thanks dannvix senpai
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import fetch from "/Users/dannvix/node_modules/node-fetch"; | |
import Promise from "/Users/dannvix/node_modules/promise"; | |
const urls = [ | |
"http://www.google.com", | |
"http://www.yahoo.com", | |
"http://www.microsoft.com", | |
]; | |
(function fetchUrl(urlIdx) { | |
if (urlIdx < 0 || urlIdx >= urls.length) return; | |
console.log(`urlIdx = ${urlIdx}`); | |
fetch(urls[urlIdx]) | |
.then((response) => { | |
return new Promise((resolve, reject) => { | |
const message = `urlIdx = ${urlIdx}, response.url = ${response.url}`; | |
setTimeout(resolve, Math.random() * 2000 + 1000, message); | |
}); | |
}) | |
.then((message) => { | |
console.log(message); | |
return new Promise((resolve, reject) => { | |
const messageAgain = `${message} again!`; | |
setTimeout(resolve, Math.random() * 3000 + 500, messageAgain); | |
}); | |
}) | |
.then((messageAgain) => { | |
console.log(messageAgain); | |
setTimeout(fetchUrl, 1000, urlIdx+1); | |
}); | |
})(0); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment