It is a practice for understanding how promise work
Creating a promise function with setTimeout(cb, interval)
, and make different magic with promise combination.
Example
// sleep for number mi-second
// resolve value as number+1, 1 is 1second
// when number is empty, or negative(-1), reject promise
const sleep = (number) => {
....
setTimeout( ... )
...
}
sleep(2).then( //wait for 2second
(result) => console.log(result) // result is 3
)
2- creating sequential promise, by wait for 1s, 2s and 3s sequentially. And showing result for each promise is done.
3- creating parallel promise, by wait for 1s, 2s and 3s parallelly. And showing result when all promise is done.
example
const = randomeNumber = (min, max) => { ... } // -5~5
sleep(randomeNumber())
.then(sleep(randomeNumber())
.then((sleep(randomeNumber())
.then((sleep(randomeNumber())
.then((sleep(randomeNumber())