メモ。近いうちもっと分かりやすいPromise記事書こう。
qiita.js
function randomInt(min, max) {
return Math.floor(Math.random() * (max - min) + min);
}
function timerPromisefy(index) {
return new Promise(function (resolve) {
const interval = randomInt(100, 1000);
setTimeout(function () {
console.log('index: ' + index + ' interval: ' + interval);
resolve();
}, interval);
});
}
const startDate = Date.now();
Promise.resolve()
.then(function() {
return Promise.all([
timerPromisefy(1),
timerPromisefy(1),
timerPromisefy(1),
timerPromisefy(1)
]);
}).then(function() {
return Promise.all([
timerPromisefy(2),
timerPromisefy(2)
]);
});