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