Guest User

Untitled

a guest
Nov 14th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.35 KB | None | 0 0
  1. export async function asyncReduce<U, T = any>(
  2. arr: ReadonlyArray<T>,
  3. iter: (
  4. memo: U,
  5. value: T,
  6. index: number,
  7. arr: ReadonlyArray<T>
  8. ) => U | Promise<U>,
  9. startValue: U | Promise<U>
  10. ) {
  11. let endValue = await startValue
  12. for (let i = 0; i < arr.length; i++) {
  13. endValue = await iter(endValue, arr[i], i, arr)
  14. }
  15. return endValue
  16. }
Add Comment
Please, Sign In to add comment