Added async function chain
This commit is contained in:
15
snippets/chain-async-functions.md
Normal file
15
snippets/chain-async-functions.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
### Chain asynchronous functions
|
||||||
|
|
||||||
|
Loop through an array of functions containing asynchronous events, calling `next` when each asynchronous event has completed.
|
||||||
|
|
||||||
|
```js
|
||||||
|
const chainAsync = fns => {
|
||||||
|
let curr = 0; const next = () => fns[curr++](next); next()
|
||||||
|
}
|
||||||
|
chainAsync([
|
||||||
|
next => { console.log('This happens at 0 seconds'); setTimeout(next, 1000) },
|
||||||
|
next => { console.log('This happens at 1 second'); setTimeout(next, 1000) },
|
||||||
|
next => { console.log('This happens at 2 seconds'); setTimeout(next, 1000) },
|
||||||
|
next => { console.log('Done at 3 seconds!') }
|
||||||
|
])
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user