Skip to content

Instantly share code, notes, and snippets.

View hunterc's full-sized avatar

Hunter Cassidy hunterc

View GitHub Profile
@hunterc
hunterc / async-examples.js
Created October 22, 2016 01:47 — forked from developit/async-examples.js
Async Array utilities in async/await. Now available as an npm package: https://github.com/developit/asyncro
/** Async version of Array.prototype.reduce()
* await reduce(['/foo', '/bar', '/baz'], async (acc, v) => {
* acc[v] = await (await fetch(v)).json();
* return acc;
* }, {});
*/
export async function reduce(arr, fn, val, pure) {
for (let i=0; i<arr.length; i++) {
let v = await fn(val, arr[i], i, arr);
if (pure!==false) val = v;