Invoke an async reducer function on each item in the given Array,
where the reducer transforms an accumulator value based on each item iterated over.
Note: because reduce() is order-sensitive, iteration is sequential.
This is an asynchronous version of
Array.prototype.reduce()
(Array) The Array to reduce
(Function) Async function, gets passed
(accumulator, value, index, array)
and returns a new value for
accumulator
([any]) Optional initial accumulator value
any:
final
accumulator
value
await reduce(
['/foo', '/bar', '/baz'],
async (accumulator, value) => {
accumulator[v] = await fetch(value);
return accumulator;
},
{}
);
Invoke an async transform function on each item in the given Array in parallel, returning the resulting Array of mapped/transformed items.
This is an asynchronous, parallelized version of
Array.prototype.map().
(Array) The Array to map over
Array:
resulting mapped/transformed values.
await map(
['foo', 'baz'],
async v => await fetch(v)
)
Invoke an async filter function on each item in the given Array in parallel, returning an Array of values for which the filter function returned a truthy value.
This is an asynchronous, parallelized version of
Array.prototype.filter().
(Array) The Array to filter
(Function) Async function. Gets passed
(value, index, array)
, returns true to keep the value in the resulting filtered Array.
Array:
resulting filtered values
await filter(
['foo', 'baz'],
async v => (await fetch(v)).ok
)
Invoke an async function on each item in the given Array in parallel, returning the first element predicate returns truthy for.
This is an asynchronous, parallelized version of
Array.prototype.find().
(Array) The Array to find
(Function) Async function. Gets passed
(value, index, array)
, returns true to be the find result.
any:
resulting find value
await find(
['foo', 'baz', 'root'],
async v => (await fetch(v)).name === 'baz'
)
Checks if predicate returns truthy for all elements of collection in parallel.
This is an asynchronous, parallelized version of
Array.prototype.every().
(Array) The Array to iterate over.
(Function) Async function. Gets passed
(value, index, array)
, The function invoked per iteration.
Boolean:
Returns true if
all
element passes the predicate check, else false.
await every(
[2, 3],
async v => (await fetch(v)).ok
)
Checks if predicate returns truthy for any element of collection in parallel.
This is an asynchronous, parallelized version of
Array.prototype.some().
(Array) The Array to iterate over.
(Function) Async function. Gets passed
(value, index, array)
, The function invoked per iteration.
Boolean:
Returns true if
any
element passes the predicate check, else false.
await some(
['foo', 'baz'],
async v => (await fetch(v)).ok
)
Invoke all async functions in an Array or Object in parallel, returning the result.
(Array | Object):
same structure as
list
input, but with values now resolved.
await parallel([
async () => await fetch('foo'),
async () => await fetch('baz')
])
Invoke all async functions in an Array or Object sequentially, returning the result.
(Array | Object):
same structure as
list
input, but with values now resolved.
await series([
async () => await fetch('foo'),
async () => await fetch('baz')
])